コード例 #1
0
        private bool ADObjectPostCommitFSRoutine(ADFactory <T> .DirectoryOperation operation, T instance, ADParameterSet parameters, ADObject directoryObj)
        {
            bool hasValue;

            if (operation != ADFactory <T> .DirectoryOperation.Create || !base.PropertyHasChange(ADObjectFactory <T> .ADObjectPropertyMap.ProtectedFromDeletion.PropertyName, instance, parameters, operation))
            {
                if (operation != ADFactory <T> .DirectoryOperation.Create || !ProtectedFromDeletionUtil.ShouldProtectByDefault(directoryObj.ObjectClass))
                {
                    return(false);
                }
                else
                {
                    return(ProtectedFromDeletionUtil.ProtectFromAccidentalDeletion(directoryObj, base.CmdletSessionInfo));
                }
            }
            else
            {
                bool?singleValueProperty = base.GetSingleValueProperty <bool?>(ADObjectFactory <T> .ADObjectPropertyMap.ProtectedFromDeletion.PropertyName, instance, parameters, operation);
                if (singleValueProperty.HasValue)
                {
                    bool?nullable = singleValueProperty;
                    if (!nullable.GetValueOrDefault())
                    {
                        hasValue = false;
                    }
                    else
                    {
                        hasValue = nullable.HasValue;
                    }
                    if (!hasValue)
                    {
                        return(ProtectedFromDeletionUtil.UnprotectFromAccidentalDeletion(directoryObj, base.CmdletSessionInfo));
                    }
                    else
                    {
                        return(ProtectedFromDeletionUtil.ProtectFromAccidentalDeletion(directoryObj, base.CmdletSessionInfo));
                    }
                }
                else
                {
                    return(false);
                }
            }
        }
コード例 #2
0
 internal static bool ProtectFromAccidentalDeletion(ADObject directoryObj, ADSessionInfo sessionInfo)
 {
     return(ProtectedFromDeletionUtil.ProtectFromAccidentalDeletion(directoryObj, ProtectedFromDeletionUtil.BuildCmdletSessionInfo(sessionInfo)));
 }