Skip to content

Commit

Permalink
feat(client-transfer): Introduced S3StorageOptions for servers to ena…
Browse files Browse the repository at this point in the history
…ble directory listing optimizations and added Type fields to logical directory mappings.
  • Loading branch information
awstools committed Nov 16, 2023
1 parent de24311 commit 95a1b14
Show file tree
Hide file tree
Showing 12 changed files with 182 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ export interface CreateAccessCommandOutput extends CreateAccessResponse, __Metad
* { // HomeDirectoryMapEntry
* Entry: "STRING_VALUE", // required
* Target: "STRING_VALUE", // required
* Type: "FILE" || "DIRECTORY",
* },
* ],
* Policy: "STRING_VALUE",
Expand Down
3 changes: 3 additions & 0 deletions clients/client-transfer/src/commands/CreateServerCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,9 @@ export interface CreateServerCommandOutput extends CreateServerResponse, __Metad
* StructuredLogDestinations: [ // StructuredLogDestinations
* "STRING_VALUE",
* ],
* S3StorageOptions: { // S3StorageOptions
* DirectoryListingOptimization: "ENABLED" || "DISABLED",
* },
* };
* const command = new CreateServerCommand(input);
* const response = await client.send(command);
Expand Down
1 change: 1 addition & 0 deletions clients/client-transfer/src/commands/CreateUserCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ export interface CreateUserCommandOutput extends CreateUserResponse, __MetadataB
* { // HomeDirectoryMapEntry
* Entry: "STRING_VALUE", // required
* Target: "STRING_VALUE", // required
* Type: "FILE" || "DIRECTORY",
* },
* ],
* Policy: "STRING_VALUE",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ export interface DescribeAccessCommandOutput extends DescribeAccessResponse, __M
* // { // HomeDirectoryMapEntry
* // Entry: "STRING_VALUE", // required
* // Target: "STRING_VALUE", // required
* // Type: "FILE" || "DIRECTORY",
* // },
* // ],
* // HomeDirectoryType: "PATH" || "LOGICAL",
Expand Down
3 changes: 3 additions & 0 deletions clients/client-transfer/src/commands/DescribeServerCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,9 @@ export interface DescribeServerCommandOutput extends DescribeServerResponse, __M
* // StructuredLogDestinations: [ // StructuredLogDestinations
* // "STRING_VALUE",
* // ],
* // S3StorageOptions: { // S3StorageOptions
* // DirectoryListingOptimization: "ENABLED" || "DISABLED",
* // },
* // },
* // };
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ export interface DescribeUserCommandOutput extends DescribeUserResponse, __Metad
* // { // HomeDirectoryMapEntry
* // Entry: "STRING_VALUE", // required
* // Target: "STRING_VALUE", // required
* // Type: "FILE" || "DIRECTORY",
* // },
* // ],
* // HomeDirectoryType: "PATH" || "LOGICAL",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ export interface UpdateAccessCommandOutput extends UpdateAccessResponse, __Metad
* { // HomeDirectoryMapEntry
* Entry: "STRING_VALUE", // required
* Target: "STRING_VALUE", // required
* Type: "FILE" || "DIRECTORY",
* },
* ],
* Policy: "STRING_VALUE",
Expand Down
3 changes: 3 additions & 0 deletions clients/client-transfer/src/commands/UpdateServerCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,9 @@ export interface UpdateServerCommandOutput extends UpdateServerResponse, __Metad
* StructuredLogDestinations: [ // StructuredLogDestinations
* "STRING_VALUE",
* ],
* S3StorageOptions: { // S3StorageOptions
* DirectoryListingOptimization: "ENABLED" || "DISABLED",
* },
* };
* const command = new UpdateServerCommand(input);
* const response = await client.send(command);
Expand Down
1 change: 1 addition & 0 deletions clients/client-transfer/src/commands/UpdateUserCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ export interface UpdateUserCommandOutput extends UpdateUserResponse, __MetadataB
* { // HomeDirectoryMapEntry
* Entry: "STRING_VALUE", // required
* Target: "STRING_VALUE", // required
* Type: "FILE" || "DIRECTORY",
* },
* ],
* Policy: "STRING_VALUE",
Expand Down
80 changes: 79 additions & 1 deletion clients/client-transfer/src/models/models_0.ts
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,20 @@ export interface CopyStepDetails {
SourceFileLocation?: string;
}

/**
* @public
* @enum
*/
export const MapType = {
DIRECTORY: "DIRECTORY",
FILE: "FILE",
} as const;

/**
* @public
*/
export type MapType = (typeof MapType)[keyof typeof MapType];

/**
* @public
* <p>Represents an object that contains entries and targets for
Expand All @@ -470,9 +484,20 @@ export interface HomeDirectoryMapEntry {

/**
* @public
* <p>Represents the map target that is used in a <code>HomeDirectorymapEntry</code>.</p>
* <p>Represents the map target that is used in a <code>HomeDirectoryMapEntry</code>.</p>
*/
Target: string | undefined;

/**
* @public
* <p>Specifies the type of mapping. Set the type to <code>FILE</code> if you want the mapping to point to a file, or <code>DIRECTORY</code> for the directory to point to a directory.</p>
* <note>
* <p>By default, home directory mappings have a <code>Type</code> of <code>DIRECTORY</code> when you create a Transfer Family server. You would need to explicitly
* set <code>Type</code> to <code>FILE</code> if you want a mapping to have a file
* target.</p>
* </note>
*/
Type?: MapType;
}

/**
Expand Down Expand Up @@ -1423,6 +1448,35 @@ export const Protocol = {
*/
export type Protocol = (typeof Protocol)[keyof typeof Protocol];

/**
* @public
* @enum
*/
export const DirectoryListingOptimization = {
DISABLED: "DISABLED",
ENABLED: "ENABLED",
} as const;

/**
* @public
*/
export type DirectoryListingOptimization =
(typeof DirectoryListingOptimization)[keyof typeof DirectoryListingOptimization];

/**
* @public
* <p>The Amazon S3 storage options that are configured for your server.</p>
*/
export interface S3StorageOptions {
/**
* @public
* <p>Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.</p>
* <p>By default, home directory mappings have a <code>TYPE</code> of <code>DIRECTORY</code>. If you enable this option, you would then need to explicitly set the <code>HomeDirectoryMapEntry</code>
* <code>Type</code> to <code>FILE</code> if you want a mapping to have a file target.</p>
*/
DirectoryListingOptimization?: DirectoryListingOptimization;
}

/**
* @public
* <p>Specifies the workflow ID for the workflow to assign and the execution role that's used for executing the workflow.</p>
Expand Down Expand Up @@ -1758,6 +1812,14 @@ export interface CreateServerRequest {
* </p>
*/
StructuredLogDestinations?: string[];

/**
* @public
* <p>Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.</p>
* <p>By default, home directory mappings have a <code>TYPE</code> of <code>DIRECTORY</code>. If you enable this option, you would then need to explicitly set the <code>HomeDirectoryMapEntry</code>
* <code>Type</code> to <code>FILE</code> if you want a mapping to have a file target.</p>
*/
S3StorageOptions?: S3StorageOptions;
}

/**
Expand Down Expand Up @@ -3790,6 +3852,14 @@ export interface DescribedServer {
* </p>
*/
StructuredLogDestinations?: string[];

/**
* @public
* <p>Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.</p>
* <p>By default, home directory mappings have a <code>TYPE</code> of <code>DIRECTORY</code>. If you enable this option, you would then need to explicitly set the <code>HomeDirectoryMapEntry</code>
* <code>Type</code> to <code>FILE</code> if you want a mapping to have a file target.</p>
*/
S3StorageOptions?: S3StorageOptions;
}

/**
Expand Down Expand Up @@ -6385,6 +6455,14 @@ export interface UpdateServerRequest {
* </p>
*/
StructuredLogDestinations?: string[];

/**
* @public
* <p>Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.</p>
* <p>By default, home directory mappings have a <code>TYPE</code> of <code>DIRECTORY</code>. If you enable this option, you would then need to explicitly set the <code>HomeDirectoryMapEntry</code>
* <code>Type</code> to <code>FILE</code> if you want a mapping to have a file target.</p>
*/
S3StorageOptions?: S3StorageOptions;
}

/**
Expand Down
5 changes: 5 additions & 0 deletions clients/client-transfer/src/protocols/Aws_json1_1.ts
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,7 @@ import {
ResourceExistsException,
ResourceNotFoundException,
S3InputFileLocation,
S3StorageOptions,
S3Tag,
SendWorkflowStepStateRequest,
ServiceUnavailableException,
Expand Down Expand Up @@ -4591,6 +4592,8 @@ const se_ImportCertificateRequest = (input: ImportCertificateRequest, context: _

// se_S3InputFileLocation omitted.

// se_S3StorageOptions omitted.

// se_S3Tag omitted.

// se_S3Tags omitted.
Expand Down Expand Up @@ -4995,6 +4998,8 @@ const de_ListHostKeysResponse = (output: any, context: __SerdeContext): ListHost

// de_S3InputFileLocation omitted.

// de_S3StorageOptions omitted.

// de_S3Tag omitted.

// de_S3Tags omitted.
Expand Down
Loading

0 comments on commit 95a1b14

Please sign in to comment.