resources/custom-resources/rds-options/src/main/java/com/amazon/aws/partners/saasfactory/saasboost/Database.java [22:125]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@JsonDeserialize(builder = Database.Builder.class)
public class Database {

    enum RDS_ENGINE {
        AURORA_PG("aurora-postgresql", "Amazon Aurora PostgreSQL", 5432),
        AURORA_MYSQL("aurora-mysql", "Amazon Aurora MySQL", 3306),
        MYSQL("mysql", "MySQL", 3306),
        MARIADB("mariadb", "MariaDB", 3306),
        POSTGRES("postgres", "PostgreSQL", 5432),
        MS_SQL_EXPRESS("sqlserver-ex", "SQL Server Express Edition", 1433),
        MS_SQL_WEB("sqlserver-web", "SQL Server Web Edition", 1433),
        MS_SQL_STANDARD("sqlserver-se", "SQL Server Standard Edition", 1433),
        MS_SQL_ENTERPRISE("sqlserver-ee", "SQL Server Enterprise Edition", 1433),
        ORACLE("oracle-ee", "Oracle", 1521);

        private final String engine;
        private final String description;
        private final Integer port;

        RDS_ENGINE(String name, String description, Integer port) {
            this.engine = name;
            this.description = description;
            this.port = port;
        }

        public String getEngine() {
            return engine;
        }

        public String getDescription() {
            return description;
        }

        public Integer getPort() {
            return port;
        }

        public static RDS_ENGINE ofEngine(String engine) {
            RDS_ENGINE rdsEngine = null;
            for (RDS_ENGINE e : RDS_ENGINE.values()) {
                if (e.getEngine().equals(engine)) {
                    rdsEngine = e;
                    break;
                }
            }
            return rdsEngine;
        }
    };

    enum RDS_INSTANCE {
        T3_MICRO("db.t3.micro", "2 vCPUs 1 GiB RAM"),
        T3_SMALL("db.t3.small", "2 vCPUs 2 GiB RAM"),
        T3_MEDIUM("db.t3.medium", "2 vCPUs 4 GiB RAM"),
        T3_LARGE("db.t3.large", "2 vCPUs 8 GiB RAM"),
        T3_XL("db.t3.xlarge", "4 vCPUs 16 GiB RAM"),
        T3_2XL("db.t3.2xlarge", "8 vCPUs 32 GiB RAM"),
        M5_LARGE("db.m5.large", "2 vCPUs 8 GiB RAM"),
        M5_XL("db.m5.xlarge", "4 vCPUs 16 GiB RAM"),
        M5_2XL("db.m5.2xlarge", "8 vCPUs 32 GiB RAM"),
        M5_4XL("db.m5.4xlarge", "16 vCPUs 64 GiB RAM"),
        M5_12XL("db.m5.12xlarge", "48 vCPUs 192 GiB RAM"),
        M5_24XL("db.m5.24xlarge", "96 vCPUs 384 GiB RAM"),
        R5_LARGE("db.r5.large", "2 vCPUs 16 GiB RAM"),
        R5_XL("db.r5.xlarge", "4 vCPUs 32 GiB RAM"),
        R5_2XL("db.r5.2xlarge", "8 vCPUs 64 GiB RAM"),
        R5_4XL("db.r5.4xlarge", "16 vCPUs 128 GiB RAM"),
        R5_12XL("db.r5.12xlarge", "48 vCPUs 384 GiB RAM"),
        R5_24XL("db.r5.24xlarge", "96 vCPUs 768 GiB RAM");

        private final String instanceClass;
        private final String description;

        RDS_INSTANCE(String name, String description) {
            this.instanceClass = name;
            this.description = description;
        }

        public String getInstanceClass() {
            return instanceClass;
        }

        public String getDescription() {
            return description;
        }

        public static RDS_INSTANCE ofInstanceClass(String instanceClass) {
            RDS_INSTANCE instance = null;
            for (RDS_INSTANCE ec2 : RDS_INSTANCE.values()) {
                if (ec2.getInstanceClass().equals(instanceClass)) {
                    instance = ec2;
                    break;
                }
            }
            return instance;
        }
    }

    private RDS_ENGINE engine;
    private RDS_INSTANCE instance;
    private String version;
    private String family;
    private String database;
    private String username;
    private String password;
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



services/settings-service/src/main/java/com/amazon/aws/partners/saasfactory/saasboost/Database.java [24:127]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@JsonDeserialize(builder = Database.Builder.class)
public class Database {

    enum RDS_ENGINE {
        AURORA_PG("aurora-postgresql", "Amazon Aurora PostgreSQL", 5432),
        AURORA_MYSQL("aurora-mysql", "Amazon Aurora MySQL", 3306),
        MYSQL("mysql", "MySQL", 3306),
        MARIADB("mariadb", "MariaDB", 3306),
        POSTGRES("postgres", "PostgreSQL", 5432),
        MS_SQL_EXPRESS("sqlserver-ex", "SQL Server Express Edition", 1433),
        MS_SQL_WEB("sqlserver-web", "SQL Server Web Edition", 1433),
        MS_SQL_STANDARD("sqlserver-se", "SQL Server Standard Edition", 1433),
        MS_SQL_ENTERPRISE("sqlserver-ee", "SQL Server Enterprise Edition", 1433),
        ORACLE("oracle-ee", "Oracle", 1521);

        private final String engine;
        private final String description;
        private final Integer port;

        RDS_ENGINE(String name, String description, Integer port) {
            this.engine = name;
            this.description = description;
            this.port = port;
        }

        public String getEngine() {
            return engine;
        }

        public String getDescription() {
            return description;
        }

        public Integer getPort() {
            return port;
        }

        public static RDS_ENGINE ofEngine(String engine) {
            RDS_ENGINE rdsEngine = null;
            for (RDS_ENGINE e : RDS_ENGINE.values()) {
                if (e.getEngine().equals(engine)) {
                    rdsEngine = e;
                    break;
                }
            }
            return rdsEngine;
        }
    };

    enum RDS_INSTANCE {
        T3_MICRO("db.t3.micro", "2 vCPUs 1 GiB RAM"),
        T3_SMALL("db.t3.small", "2 vCPUs 2 GiB RAM"),
        T3_MEDIUM("db.t3.medium", "2 vCPUs 4 GiB RAM"),
        T3_LARGE("db.t3.large", "2 vCPUs 8 GiB RAM"),
        T3_XL("db.t3.xlarge", "4 vCPUs 16 GiB RAM"),
        T3_2XL("db.t3.2xlarge", "8 vCPUs 32 GiB RAM"),
        M5_LARGE("db.m5.large", "2 vCPUs 8 GiB RAM"),
        M5_XL("db.m5.xlarge", "4 vCPUs 16 GiB RAM"),
        M5_2XL("db.m5.2xlarge", "8 vCPUs 32 GiB RAM"),
        M5_4XL("db.m5.4xlarge", "16 vCPUs 64 GiB RAM"),
        M5_12XL("db.m5.12xlarge", "48 vCPUs 192 GiB RAM"),
        M5_24XL("db.m5.24xlarge", "96 vCPUs 384 GiB RAM"),
        R5_LARGE("db.r5.large", "2 vCPUs 16 GiB RAM"),
        R5_XL("db.r5.xlarge", "4 vCPUs 32 GiB RAM"),
        R5_2XL("db.r5.2xlarge", "8 vCPUs 64 GiB RAM"),
        R5_4XL("db.r5.4xlarge", "16 vCPUs 128 GiB RAM"),
        R5_12XL("db.r5.12xlarge", "48 vCPUs 384 GiB RAM"),
        R5_24XL("db.r5.24xlarge", "96 vCPUs 768 GiB RAM");

        private final String instanceClass;
        private final String description;

        RDS_INSTANCE(String name, String description) {
            this.instanceClass = name;
            this.description = description;
        }

        public String getInstanceClass() {
            return instanceClass;
        }

        public String getDescription() {
            return description;
        }

        public static RDS_INSTANCE ofInstanceClass(String instanceClass) {
            RDS_INSTANCE instance = null;
            for (RDS_INSTANCE ec2 : RDS_INSTANCE.values()) {
                if (ec2.getInstanceClass().equals(instanceClass)) {
                    instance = ec2;
                    break;
                }
            }
            return instance;
        }
    }

    private RDS_ENGINE engine;
    private RDS_INSTANCE instance;
    private String version;
    private String family;
    private String database;
    private String username;
    private String password;
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



