Changeset 2502


Ignore:
Timestamp:
Jan 27, 2011, 2:34:30 PM (11 years ago)
Author:
Sven Rech
Message:

added settings tab for CrypP2P and added timeout setting to it

Location:
trunk/CrypP2P
Files:
6 added
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/CrypP2P/CrypP2P.csproj

    r2406 r2502  
    134134      <DependentUpon>P2PSettings.settings</DependentUpon>
    135135    </Compile>
     136    <Compile Include="P2PSettingsTab.xaml.cs">
     137      <DependentUpon>P2PSettingsTab.xaml</DependentUpon>
     138    </Compile>
     139    <Compile Include="Properties\Resources.de-DE1.Designer.cs">
     140      <DependentUpon>Resources.de-DE.resx</DependentUpon>
     141      <AutoGen>True</AutoGen>
     142      <DesignTime>True</DesignTime>
     143    </Compile>
     144    <Compile Include="Properties\Resources.Designer.cs">
     145      <AutoGen>True</AutoGen>
     146      <DesignTime>True</DesignTime>
     147      <DependentUpon>Resources.resx</DependentUpon>
     148    </Compile>
    136149    <Compile Include="Worker\ConnectionWorker.cs" />
    137150    <Compile Include="Worker\WorkerBase.cs" />
     
    177190    </ProjectReference>
    178191  </ItemGroup>
     192  <ItemGroup>
     193    <Page Include="P2PSettingsTab.xaml">
     194      <SubType>Designer</SubType>
     195      <Generator>MSBuild:Compile</Generator>
     196    </Page>
     197  </ItemGroup>
     198  <ItemGroup>
     199    <EmbeddedResource Include="Properties\Resources.de-DE.resx">
     200      <Generator>ResXFileCodeGenerator</Generator>
     201      <LastGenOutput>Resources.de-DE1.Designer.cs</LastGenOutput>
     202      <SubType>Designer</SubType>
     203    </EmbeddedResource>
     204    <EmbeddedResource Include="Properties\Resources.resx">
     205      <Generator>ResXFileCodeGenerator</Generator>
     206      <LastGenOutput>Resources.Designer.cs</LastGenOutput>
     207      <SubType>Designer</SubType>
     208    </EmbeddedResource>
     209  </ItemGroup>
    179210  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
    180211  <PropertyGroup>
  • trunk/CrypP2P/Internal/P2PBase.cs

    r2448 r2502  
    396396            VersionedDht.Store(OnSynchStoreCompleted, key, data, requestResult);
    397397
    398             // blocking till response
    399             bool success = autoResetEvent.WaitOne(1000*60*2);
    400             if (!success)
    401             {
    402                 P2PManager.GuiLogMessage("Timeout in DHT Operation. Just a quick hack!", NotificationLevel.Warning);
    403                 if (!IsConnected)
    404                     throw new NotConnectedException();
    405                 else
    406                     throw new InvalidOperationException("SynchStore failed for some reason!");
    407             }
     398            if (P2PSettings.Default.UseTimeout)
     399            {
     400                // blocking till response
     401                bool success = autoResetEvent.WaitOne(1000*60*2);
     402                if (!success)
     403                {
     404                    P2PManager.GuiLogMessage("Timeout in DHT Operation. Just a quick hack!", NotificationLevel.Warning);
     405                    if (!IsConnected)
     406                        throw new NotConnectedException();
     407                    else
     408                        throw new InvalidOperationException("SynchStore failed for some reason!");
     409                }
     410            }
     411            else
     412            {
     413                autoResetEvent.WaitOne();
     414            }
     415
    408416            LogToMonitor("End: SynchStore. Key: " + key + ". Status: " + requestResult.Status);
    409417
     
    444452            Dht.Retrieve(OnSynchRetrieveCompleted, key, requestResult);
    445453
    446             // blocking till response
    447             bool success = autoResetEvent.WaitOne(1000 * 60 * 2);
    448             if (!success)
    449             {
    450                 P2PManager.GuiLogMessage("Timeout in DHT Operation. Just a quick hack!", NotificationLevel.Warning);
    451                 if (!IsConnected)
    452                     throw new NotConnectedException();
    453                 else
    454                     throw new InvalidOperationException("SynchRetrieve failed for some reason!");
     454            if (P2PSettings.Default.UseTimeout)
     455            {
     456                // blocking till response
     457                bool success = autoResetEvent.WaitOne(1000*60*2);
     458                if (!success)
     459                {
     460                    P2PManager.GuiLogMessage("Timeout in DHT Operation. Just a quick hack!", NotificationLevel.Warning);
     461                    if (!IsConnected)
     462                        throw new NotConnectedException();
     463                    else
     464                        throw new InvalidOperationException("SynchRetrieve failed for some reason!");
     465                }
     466            }
     467            else
     468            {
     469                autoResetEvent.WaitOne();
    455470            }
    456471
     
    492507            VersionedDht.Remove(OnSynchRemoveCompleted, key, requestResult);
    493508
    494             // blocking till response
    495             bool success = autoResetEvent.WaitOne(1000 * 60 * 2);
    496             if (!success)
    497             {
    498                 P2PManager.GuiLogMessage("Timeout in DHT Operation. Just a quick hack!", NotificationLevel.Warning);
    499                 if (!IsConnected)
    500                     throw new NotConnectedException();
    501                 else
    502                     throw new InvalidOperationException("SynchRemove failed for some reason!");
     509            if (P2PSettings.Default.UseTimeout)
     510            {
     511                // blocking till response
     512                bool success = autoResetEvent.WaitOne(1000*60*2);
     513                if (!success)
     514                {
     515                    P2PManager.GuiLogMessage("Timeout in DHT Operation. Just a quick hack!", NotificationLevel.Warning);
     516                    if (!IsConnected)
     517                        throw new NotConnectedException();
     518                    else
     519                        throw new InvalidOperationException("SynchRemove failed for some reason!");
     520                }
     521            }
     522            else
     523            {
     524                autoResetEvent.WaitOne();
    503525            }
    504526
  • trunk/CrypP2P/P2PSettings.Designer.cs

    r2413 r2502  
    203203            }
    204204        }
     205       
     206        [global::System.Configuration.UserScopedSettingAttribute()]
     207        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
     208        [global::System.Configuration.DefaultSettingValueAttribute("True")]
     209        public bool UseTimeout {
     210            get {
     211                return ((bool)(this["UseTimeout"]));
     212            }
     213            set {
     214                this["UseTimeout"] = value;
     215            }
     216        }
    205217    }
    206218}
  • trunk/CrypP2P/P2PSettings.settings

    r2413 r2502  
    4848      <Value Profile="(Default)">True</Value>
    4949    </Setting>
     50    <Setting Name="UseTimeout" Type="System.Boolean" Scope="User">
     51      <Value Profile="(Default)">True</Value>
     52    </Setting>
    5053  </Settings>
    5154</SettingsFile>
  • trunk/CrypP2P/app.config

    r2413 r2502  
    5353                <value>True</value>
    5454            </setting>
     55            <setting name="UseTimeout" serializeAs="String">
     56                <value>True</value>
     57            </setting>
    5558        </Cryptool.P2P.P2PSettings>
    5659    </userSettings>
Note: See TracChangeset for help on using the changeset viewer.