private DatabaseMoveResult PrepareResultEntryForMoveBack(AmDatabaseMoveResult result)
        {
            DatabaseMoveResult databaseMoveResult = new DatabaseMoveResult();

            databaseMoveResult.Guid = result.DbGuid;
            ConfigObjectId identity = new ConfigObjectId(result.DbName);

            databaseMoveResult.Identity            = identity;
            databaseMoveResult.ActiveServerAtStart = result.FromServerFqdn;
            databaseMoveResult.ActiveServerAtEnd   = result.FinalActiveServerFqdn;
            databaseMoveResult.Status = MoveActiveMailboxDatabase.ConvertToMoveStatus(result.MoveStatus);
            databaseMoveResult.MountStatusAtMoveStart = MoveActiveMailboxDatabase.ConvertToMountStatus(result.MountStatusAtStart);
            databaseMoveResult.MountStatusAtMoveEnd   = MoveActiveMailboxDatabase.ConvertToMountStatus(result.MountStatusAtEnd);
            if (result.AttemptedServerSubStatuses != null)
            {
                AmDbRpcOperationSubStatus amDbRpcOperationSubStatus = result.AttemptedServerSubStatuses.LastOrDefault <AmDbRpcOperationSubStatus>();
                if (amDbRpcOperationSubStatus != null)
                {
                    databaseMoveResult.NumberOfLogsLost       = MoveActiveMailboxDatabase.ToNullableLogGeneration(amDbRpcOperationSubStatus.AcllStatus.NumberOfLogsLost);
                    databaseMoveResult.RecoveryPointObjective = DumpsterStatisticsEntry.ToNullableLocalDateTime(amDbRpcOperationSubStatus.AcllStatus.LastInspectedLogTime);
                }
            }
            Exception exceptionFromMoveResult = this.GetExceptionFromMoveResult(result);

            if (exceptionFromMoveResult != null)
            {
                databaseMoveResult.Exception    = exceptionFromMoveResult;
                databaseMoveResult.ErrorMessage = exceptionFromMoveResult.Message;
            }
            return(databaseMoveResult);
        }
Ejemplo n.º 2
0
 public void AddPropertyValue(ConfigObjectId identity, PropertyDefinition prop, object value)
 {
     if (identity == null)
     {
         throw new ArgumentNullException("identity");
     }
     this.AddPropertyValue(Guid.Parse(identity.ToString()), prop, value);
 }
Ejemplo n.º 3
0
 public object this[PropertyDefinition propertyDefinition]
 {
     get
     {
         object obj = null;
         StorePropertyDefinition storePropertyDefinition = propertyDefinition as StorePropertyDefinition;
         if (storePropertyDefinition != null)
         {
             if (ItemSchema.TextBody.CompareTo(storePropertyDefinition) == 0)
             {
                 if (this.ewsItem.ExtendedProperty != null && this.ewsItem.ExtendedProperty.Length > 0)
                 {
                     foreach (ExtendedPropertyType extendedPropertyType in this.ewsItem.ExtendedProperty)
                     {
                         if (string.Equals("0x1000", extendedPropertyType.ExtendedFieldURI.PropertyTag))
                         {
                             obj = (extendedPropertyType.Item as string);
                         }
                     }
                 }
             }
             else if (ItemSchema.Id.CompareTo(storePropertyDefinition) == 0)
             {
                 obj = new ConfigObjectId(this.ewsItem.ItemId.Id);
             }
             else if (StoreObjectSchema.CreationTime.CompareTo(storePropertyDefinition) == 0 && this.ewsItem.DateTimeCreatedSpecified)
             {
                 obj = new ExDateTime(ExTimeZone.UtcTimeZone, this.ewsItem.DateTimeCreated);
             }
         }
         if (obj == null)
         {
             obj = new PropertyError(propertyDefinition, PropertyErrorCode.NotFound);
         }
         return(obj);
     }
 }
Ejemplo n.º 4
0
 // Token: 0x06000344 RID: 836 RVA: 0x0000CE57 File Offset: 0x0000B057
 internal ConfigObjectIdParameter(ConfigObjectId objectId)
 {
     this.Initialize(objectId);
 }