internal ResponseObject BreakRootMapInheritance(GlymaSecurableObject securableObject)
{
ResponseObject response = new ResponseObject()
{
HasError = false
};
try
{
GetSecurableContextIdResponse securableContextIdResponse = GetSecurableContextId();
if (!securableContextIdResponse.HasError)
{
int securableContextId = securableContextIdResponse.Result;
SecurableObject obj = GetSecurableObject(securableContextId, securableObject.SecurableObjectUid);
GlymaSecurableObjectContext securableObjectContext = new GlymaSecurableObjectContext(this, securableContextId, securableObject);
if (obj == null)
{
obj = securableObjectContext.CreateSecurableObject(true);
}
if (!obj.BreaksInheritance)
{
securableObjectContext.SetSecurableObjectInheritance(true);
}
CopyGroupAssociationsToRootMap(securableObject);
}
}
catch (Exception ex)
{
response.HasError = true;
response.ErrorMessage = ex.Message;
}
return(response);
}