public ValueTask <T> DeleteCustomObject <T>(string objectPluralName, string customObjectName, string version = Version1, CancellationToken cancellationToken = default) where T : CustomObject { if (string.IsNullOrWhiteSpace(objectPluralName)) { throw new ArgumentNullException(nameof(objectPluralName)); } if (string.IsNullOrWhiteSpace(customObjectName)) { throw new ArgumentNullException(nameof(customObjectName)); } if (string.IsNullOrWhiteSpace(version)) { throw new ArgumentNullException(nameof(version)); } return(this.DeleteAsync <T>(CustomObjectUrls.ObjectUrl(version, this.options.Namespace, objectPluralName, customObjectName), immediateDeleteOptions, cancellationToken: cancellationToken)); }
public ValueTask <T> ReplaceCustomObject <T>(string objectPluralName, T customObject, string version = Version1, CancellationToken cancellationToken = default) where T : CustomObject { if (string.IsNullOrWhiteSpace(objectPluralName)) { throw new ArgumentNullException(nameof(objectPluralName)); } if (customObject == null) { throw new ArgumentNullException(nameof(customObject)); } if (customObject.Metadata == null || string.IsNullOrWhiteSpace(customObject.Metadata.Name)) { throw new ArgumentNullException(nameof(customObject.Metadata.Name), "Metadata.Name is required."); } if (string.IsNullOrWhiteSpace(version)) { throw new ArgumentNullException(nameof(version)); } return(this.PutAsync <T, T>(CustomObjectUrls.ObjectUrl(version, this.options.Namespace, objectPluralName, customObject.Metadata.Name), payload: customObject, cancellationToken: cancellationToken)); }