ControlTier > controltier-elements
 

Rdb

A relational database service

Overview

Rdb: A relational database service

Intent

An abstract representation of a database server and its dependencies. Often it is desirable to model a database server and expose its resources to referring entities such as an Application Server or other "upstream" deployments. The most common use case is to auto-generate the datasource configurations that an application server (e.g. Tomcat, JBoss, etc) may require for the database application requirements.

Additional support exists for the importing and exporting of dependent database schemas in order to automate the buliding and deploying of versioned data packages.

Discussion

The combination of Rdb and RdbSchema objects can provide a sufficient data model for automated datasource generation. Datasource configurations, which typically require the same information provided by database server(s) and its dependent schema(s), are platform specific (e.g. Tomcat and JBoss both support datasource configurations but are not in common format). It is therefore the requirement of referring objects such as of type JBossServer or TomcatServer to implement the data driven configuration.

Design

Super Type
SystemService
Role Concrete. (Objects can be created.)
Instance Names Unique
Notification false
Template Directory
Data View Children, proximity: 1
Logger Name

Constraints

Allowed Child Dependencies

1: These types have a Singleton constraint. Only one instance may be added as a resource.

Allowed Parent Dependencies

Limit rdb referrers to JBoss and Tomcat servers along with typical site and node objects.

Attributes

Defaults for Imported Attributes

Name Default Description
rdbConnection jdbc:hsqldb:hsql://localhost:1701 the rdbConnection string representing a locally accessible hsql jdbc connection.
rdbDriver org.hsqldb.jdbcDriver set the rdbDriver default to the hsql database driver.
rdbInstanceName default set the default rdbInstanceName to "default"
rdbPassword by default, unset the rdbPassword
rdbPort 1701 set the rdbPort to the default 1701 port.
rdbType hsqldb set the default rdbType to the hsql database server.
rdbUserName sa set the default rdbUserName to "sa"

Commands

View the available commands in the User Reference.

Related Types

The following types are defined for use with Rdb.

RdbConnection

Overview

RdbConnection: Specifies the Database Connection

Intent

Specifies the database connection string, such as a jdbc connection-url. Typically accessed by a referring application server for datasource generation.

Design

Super Type
RdbSetting
Role Concrete. (Objects can be created.)
Instance Names Unique

Attributes

Exported Attributes
Name Property Description
rdbConnection settingValue attribute setting containing the database connection string.

RdbDriver

Overview

RdbDriver: Specifies the Database Driver

Intent

Specifies the database driver implementation such as a jdbc class implementation. Typically accessed by a referring application server for datasource generation.

Design

Super Type
RdbSetting
Role Concrete. (Objects can be created.)
Instance Names Unique

Attributes

Exported Attributes
Name Property Description
rdbDriver settingValue attribute setting containing the database driver implementation.

RdbInstanceName

Overview

RdbInstanceName: Stores the value of the database instance name

Optionally exposes the instance name of the database server.

Design

Super Type
RdbSetting
Role Concrete. (Objects can be created.)
Instance Names Unique

Attributes

Exported Attributes
Name Property
rdbInstanceName settingValue

RdbPassword

Overview

RdbPassword: A schema user's password

Optionally exposes the administrative password of the database server.

Design

Super Type
RdbSetting
Role Concrete. (Objects can be created.)
Instance Names Unique

Constraints

Attributes

Exported Attributes
Name Property
rdbPassword settingValue

RdbPort

Overview

RdbPort: Specifies the Database Connection Port

Optionally exposes the listen port of the database server.

Design

Super Type
RdbSetting
Role Concrete. (Objects can be created.)
Instance Names Unique

Attributes

Exported Attributes
Name Property
rdbPort settingValue

RdbSetting

Overview

RdbSetting: an Rdb setting

Intent

Supertype to encapsulate related subtypes to support Rdb service.

Design

Super Type
Setting
Role Abstract. (Objects cannot be created.)
Instance Names Unique

Constraints

Limit RdbSetting's referrers to the Rdb service objects.

Allowed Parent Dependencies

RdbType

Overview

RdbType: Specifies the unique key value identifying which type database type is in use (e.g. "mssql" or "oracle", etc)

Optionally exposes the type of database implementation.

Design

Super Type
RdbSetting
Role Concrete. (Objects can be created.)
Instance Names Unique

Attributes

Exported Attributes
Name Property
rdbType settingValue

RdbUserName

Overview

RdbUserName: A user for a schema

Optionally exposes the administrative user of the database server.

Design

Super Type
RdbSetting
Role Concrete. (Objects can be created.)
Instance Names Unique

Attributes

Exported Attributes
Name Property
rdbUserName settingValue