internal bool Delete( RequestMetadata md, ContainerClient client, string objectName, out ErrorCode error) { error = ErrorCode.None; if (md == null) { throw new ArgumentNullException(nameof(md)); } if (client == null) { throw new ArgumentNullException(nameof(client)); } if (String.IsNullOrEmpty(objectName)) { throw new ArgumentNullException(nameof(objectName)); } string header = _Header + "Delete " + client.Container.UserGUID + "/" + client.Container.Name + "/" + objectName + " "; if (!_Locks.AddWriteLock(md)) { _Logging.Warn(header + "unable to add write lock"); return(false); } if (!client.RemoveObject(objectName, out error)) { _Logging.Warn(header + "unable to remove object: " + error.ToString()); _Locks.RemoveWriteLock(md); return(false); } else { string logData = "Source: " + md.Http.Request.SourceIp + ":" + md.Http.Request.SourcePort + " " + "User: "******"deleted object"); return(true); } }