createPackage method

Future<CreatePackageResponse> createPackage({
  1. required String packageName,
  2. required PackageSource packageSource,
  3. required PackageType packageType,
  4. String? packageDescription,
})

Create a package for use with Amazon OpenSearch Service domains.

May throw BaseException. May throw InternalException. May throw LimitExceededException. May throw InvalidTypeException. May throw ResourceAlreadyExistsException. May throw AccessDeniedException. May throw ValidationException.

Parameter packageName : Unique identifier for the package.

Parameter packageSource : The Amazon S3 location from which to import the package.

Parameter packageType : Type of package. Currently supports only TXT-DICTIONARY.

Parameter packageDescription : Description of the package.

Implementation

Future<CreatePackageResponse> createPackage({
  required String packageName,
  required PackageSource packageSource,
  required PackageType packageType,
  String? packageDescription,
}) async {
  ArgumentError.checkNotNull(packageName, 'packageName');
  _s.validateStringLength(
    'packageName',
    packageName,
    3,
    28,
    isRequired: true,
  );
  ArgumentError.checkNotNull(packageSource, 'packageSource');
  ArgumentError.checkNotNull(packageType, 'packageType');
  _s.validateStringLength(
    'packageDescription',
    packageDescription,
    0,
    1024,
  );
  final $payload = <String, dynamic>{
    'PackageName': packageName,
    'PackageSource': packageSource,
    'PackageType': packageType.toValue(),
    if (packageDescription != null) 'PackageDescription': packageDescription,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/2021-01-01/packages',
    exceptionFnMap: _exceptionFns,
  );
  return CreatePackageResponse.fromJson(response);
}