diff --git a/packages/@aws-cdk/aws-rds/lib/instance.ts b/packages/@aws-cdk/aws-rds/lib/instance.ts index feb44facab4d2..d04dc8ceba989 100644 --- a/packages/@aws-cdk/aws-rds/lib/instance.ts +++ b/packages/@aws-cdk/aws-rds/lib/instance.ts @@ -111,26 +111,6 @@ export interface DatabaseInstanceAttributes { * A new or imported database instance. */ export abstract class DatabaseInstanceBase extends Resource implements IDatabaseInstance { - /** - * Import an existing database instance. - */ - public static fromDatabaseInstanceAttributes(scope: Construct, id: string, attrs: DatabaseInstanceAttributes): IDatabaseInstance { - class Import extends DatabaseInstanceBase implements IDatabaseInstance { - public readonly defaultPort = ec2.Port.tcp(attrs.port); - public readonly connections = new ec2.Connections({ - securityGroups: attrs.securityGroups, - defaultPort: this.defaultPort, - }); - public readonly instanceIdentifier = attrs.instanceIdentifier; - public readonly dbInstanceEndpointAddress = attrs.instanceEndpointAddress; - public readonly dbInstanceEndpointPort = attrs.port.toString(); - public readonly instanceEndpoint = new Endpoint(attrs.instanceEndpointAddress, attrs.port); - public readonly engine = attrs.engine; - protected enableIamAuthentication = true; - } - - return new Import(scope, id); - } public abstract readonly instanceIdentifier: string; public abstract readonly dbInstanceEndpointAddress: string; @@ -975,6 +955,28 @@ export class DatabaseInstance extends DatabaseInstanceSource implements IDatabas this.setLogRetention(); } + + /** + * Import an existing database instance. + */ + public static fromDatabaseInstanceAttributes(scope: Construct, id: string, attrs: DatabaseInstanceAttributes): IDatabaseInstance { + class Import extends DatabaseInstanceBase implements IDatabaseInstance { + public readonly defaultPort = ec2.Port.tcp(attrs.port); + public readonly connections = new ec2.Connections({ + securityGroups: attrs.securityGroups, + defaultPort: this.defaultPort, + }); + public readonly instanceIdentifier = attrs.instanceIdentifier; + public readonly dbInstanceEndpointAddress = attrs.instanceEndpointAddress; + public readonly dbInstanceEndpointPort = attrs.port.toString(); + public readonly instanceEndpoint = new Endpoint(attrs.instanceEndpointAddress, attrs.port); + public readonly engine = attrs.engine; + protected enableIamAuthentication = true; + } + + return new Import(scope, id); + } + } /**