public CreatePSDataset ( |
||
parameters | ||
return |
public virtual PSDataset CreatePSDataset(CreatePSDatasetParameters parameters)
{
if (parameters == null)
{
throw new ArgumentNullException("parameters");
}
PSDataset dataset = null;
Action createDataset = () =>
{
dataset =
new PSDataset(this.CreateOrUpdateDataset(
parameters.ResourceGroupName,
parameters.DataFactoryName,
parameters.Name,
parameters.RawJsonContent))
{
ResourceGroupName = parameters.ResourceGroupName,
DataFactoryName = parameters.DataFactoryName
};
if (!DataFactoryCommonUtilities.IsSucceededProvisioningState(dataset.ProvisioningState))
{
string errorMessage = dataset.Properties == null
? string.Empty
: dataset.Properties.ErrorMessage;
throw new ProvisioningFailedException(errorMessage);
}
};
parameters.ConfirmAction(
parameters.Force, // prompt only if the dataset exists
string.Format(
CultureInfo.InvariantCulture,
Resources.DatasetExists,
parameters.Name,
parameters.DataFactoryName),
string.Format(
CultureInfo.InvariantCulture,
Resources.DatasetCreating,
parameters.Name,
parameters.DataFactoryName),
parameters.Name,
createDataset,
() => this.CheckDatasetExists(parameters.ResourceGroupName, parameters.DataFactoryName,
parameters.Name));
return dataset;
}
public override void ExecuteCmdlet() { if (ParameterSetName == ByFactoryObject) { if (DataFactory == null) { throw new PSArgumentNullException(string.Format(CultureInfo.InvariantCulture, Resources.DataFactoryArgumentInvalid)); } DataFactoryName = DataFactory.DataFactoryName; ResourceGroupName = DataFactory.ResourceGroupName; } // Resolve the file path and read the raw content string rawJsonContent = DataFactoryClient.ReadJsonFileContent(this.TryResolvePath(File)); // Resolve any mismatch between -Name and the name written in JSON Name = ResolveResourceName(rawJsonContent, Name, "Dataset"); CreatePSDatasetParameters parameters = new CreatePSDatasetParameters() { ResourceGroupName = ResourceGroupName, DataFactoryName = DataFactoryName, Name = Name, RawJsonContent = rawJsonContent, Force = Force.IsPresent, ConfirmAction = ConfirmAction }; WriteObject(DataFactoryClient.CreatePSDataset(parameters)); }