Example #1
0
 protected override void WriteResult(IConfigurable dataObject)
 {
     TaskLogger.LogEnter(new object[]
     {
         dataObject.Identity,
         dataObject
     });
     try
     {
         Database database = (Database)dataObject;
         if (database.IsExchange2009OrLater || (this.AllowLegacy && (ServerIdParameter.HasRole(((Database)dataObject).Server, ServerRole.Mailbox, base.DataSession) || !ServerIdParameter.HasRole(((Database)dataObject).Server, ServerRole.All, base.DataSession))))
         {
             string text;
             if (this.serverLegacyDNToFqdnCache.TryGetValue(database.RpcClientAccessServerLegacyDN, out text))
             {
                 database.RpcClientAccessServer = text;
             }
             database.CompleteAllCalculatedProperties();
             if (text == null)
             {
                 this.serverLegacyDNToFqdnCache.Add(database.RpcClientAccessServerLegacyDN, database.RpcClientAccessServer);
             }
             base.WriteResult(dataObject);
         }
     }
     catch (InvalidOperationException)
     {
         base.WriteError(new InvalidADObjectOperationException(Strings.ErrorFoundInvalidADObject(((ADObjectId)dataObject.Identity).ToDNString())), ErrorCategory.InvalidOperation, this.Identity);
     }
     TaskLogger.LogExit();
 }
Example #2
0
 protected override void WriteResult(IConfigurable dataObject)
 {
     TaskLogger.LogEnter(new object[]
     {
         dataObject.Identity,
         dataObject
     });
     try
     {
         if (ServerIdParameter.HasRole((ADObjectId)dataObject.Identity, ServerRole.Cafe | ServerRole.Mailbox | ServerRole.ClientAccess | ServerRole.UnifiedMessaging | ServerRole.HubTransport | ServerRole.FrontendTransport | ServerRole.FfoWebService | ServerRole.OSP, base.DataSession))
         {
             ADVirtualDirectory advirtualDirectory = dataObject as ADVirtualDirectory;
             if (advirtualDirectory != null)
             {
                 advirtualDirectory.AdminDisplayVersion = Microsoft.Exchange.Data.Directory.SystemConfiguration.Server.GetServerVersion(advirtualDirectory.Server.Name);
             }
             base.WriteResult(dataObject);
         }
     }
     catch (InvalidOperationException)
     {
         base.WriteError(new InvalidADObjectOperationException(Strings.ErrorFoundInvalidADObject(((ADObjectId)dataObject.Identity).ToDNString())), ErrorCategory.InvalidOperation, this.Identity);
     }
     TaskLogger.LogExit();
 }