Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
12/30/11 18:02:41 (12 years ago)
Author:
ascheibe
Message:

#1725

  • added a dialog which displays information for anonymous hive users
  • HiveServiceLocator now checks if the username is anonymous and throws an exception if that's the case
Location:
trunk/sources/HeuristicLab.Clients.Hive/3.3
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Clients.Hive/3.3/HeuristicLab.Clients.Hive-3.3.csproj

    r7219 r7249  
    116116  </ItemGroup>
    117117  <ItemGroup>
     118    <Compile Include="Exceptions\AnonymousUserException.cs" />
    118119    <Compile Include="HiveAdminClient.cs" />
    119120    <Compile Include="HiveClient.cs" />
  • trunk/sources/HeuristicLab.Clients.Hive/3.3/HiveServiceLocator.cs

    r7142 r7249  
    5959    public T CallHiveService<T>(Func<IHiveService, T> call) {
    6060      HiveServiceClient client = NewServiceClient();
     61      HandleAnonymousUser(client);
     62
    6163      try {
    6264        return call(client);
    63       } finally {
     65      }
     66      finally {
    6467        try {
    6568          client.Close();
     
    7376    public void CallHiveService(Action<IHiveService> call) {
    7477      HiveServiceClient client = NewServiceClient();
     78      HandleAnonymousUser(client);
     79
    7580      try {
    7681        call(client);
    77       } finally {
     82      }
     83      finally {
    7884        try {
    7985          client.Close();
     
    8490      }
    8591    }
     92
     93    private void HandleAnonymousUser(HiveServiceClient client) {
     94      if (client.ClientCredentials.UserName.UserName == Settings.Default.AnonymousUserName) {
     95        try {
     96          client.Close();
     97        }
     98        catch (Exception) {
     99          client.Abort();
     100        }
     101        throw new AnonymousUserException();
     102      }
     103    }
    86104  }
    87105}
  • trunk/sources/HeuristicLab.Clients.Hive/3.3/Settings.Designer.cs

    r7132 r7249  
    6868            }
    6969        }
     70       
     71        [global::System.Configuration.ApplicationScopedSettingAttribute()]
     72        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
     73        [global::System.Configuration.DefaultSettingValueAttribute("anonymous")]
     74        public string AnonymousUserName {
     75            get {
     76                return ((string)(this["AnonymousUserName"]));
     77            }
     78        }
    7079    }
    7180}
  • trunk/sources/HeuristicLab.Clients.Hive/3.3/Settings.settings

    r7132 r7249  
    1818      <Value Profile="(Default)">5</Value>
    1919    </Setting>
     20    <Setting Name="AnonymousUserName" Type="System.String" Scope="Application">
     21      <Value Profile="(Default)">anonymous</Value>
     22    </Setting>
    2023  </Settings>
    2124</SettingsFile>
  • trunk/sources/HeuristicLab.Clients.Hive/3.3/app.config

    r7132 r7249  
    2222      <setting name="MaxRepeatServiceCalls" serializeAs="String">
    2323        <value>5</value>
     24      </setting>
     25      <setting name="AnonymousUserName" serializeAs="String">
     26        <value>anonymous</value>
    2427      </setting>
    2528    </HeuristicLab.Clients.Hive.Settings>
Note: See TracChangeset for help on using the changeset viewer.