예제 #1
0
        protected override void InternalProcessRecord()
        {
            TaskLogger.LogEnter(new object[]
            {
                this.DataObject
            });
            TDataObject scratchPad = Activator.CreateInstance <TDataObject>();

            scratchPad.CopyChangesFrom(this.DataObject);
            base.InternalProcessRecord();
            TDataObject  dataObject   = this.DataObject;
            AmServerName amServerName = new AmServerName(dataObject.ServerName);
            TDataObject  dataObject2  = this.DataObject;

            SystemConfigurationTasksHelper.DoubleWrite <TDataObject>(dataObject2.Identity, scratchPad, amServerName.Fqdn, base.DomainController, new Task.TaskVerboseLoggingDelegate(base.WriteVerbose), new Task.TaskWarningLoggingDelegate(this.WriteWarning));
            Database database = this.DataObject;

            if (database.Servers != null && database.Servers.Length > 0)
            {
                foreach (ADObjectId adobjectId in database.Servers)
                {
                    DatabaseTasksHelper.RunConfigurationUpdaterRpcAsync(amServerName.Fqdn, database, ReplayConfigChangeHints.DbCopyAdded, new Task.TaskVerboseLoggingDelegate(base.WriteVerbose), new Task.TaskWarningLoggingDelegate(this.WriteWarning));
                }
            }
            TaskLogger.LogExit();
        }
예제 #2
0
 private void RunConfigurationUpdaterRpc(Database db)
 {
     DatabaseTasksHelper.RunConfigurationUpdaterRpcAsync(base.OwnerServer.Fqdn, db, ReplayConfigChangeHints.DbCopyAdded, new Task.TaskVerboseLoggingDelegate(base.WriteVerbose), new Task.TaskWarningLoggingDelegate(this.WriteWarning));
 }