com.ibm.websphere.samples.technologysamples.sdo.AlbumCatalog
Class AlbumCatalogMetadata

java.lang.Object
  extended by com.ibm.websphere.samples.technologysamples.sdo.AlbumCatalog.AlbumCatalogMetadata

public class AlbumCatalogMetadata
extends java.lang.Object

AlbumCatalogMetadata provides relational metadata for the Album Catalog database.


Field Summary
static java.lang.String ALBUM_BANDNAME_FIELD
           
static java.lang.String ALBUM_NAME_FIELD
           
static java.lang.String ALBUM_OCC_FIELD
           
static java.lang.String ALBUM_TRACKS_FIELD
           
static java.lang.String ALBUM_YEAR_FIELD
           
static java.lang.String ALBUMTABLE
           
static java.lang.String BAND_GENRE_FIELD
           
static java.lang.String BAND_NAME_FIELD
           
static java.lang.String BANDALBUM_REL
           
static java.lang.String BANDTABLE
           
 
Constructor Summary
AlbumCatalogMetadata()
           
 
Method Summary
static void addAlbumFKRelationship(com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata metadata, boolean isExclusive)
          Adds a relationship between the Band and Album table.
static void addAlbumTable(com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata metadata, boolean isRoot)
          Adds Album table metadata
static void addBandNameFilter(com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata metadata)
          Adds a filter on the NAME field of the Band table.
static void addBandTable(com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata metadata, boolean isRoot)
          Adds Band table metadata, which includes columns and primary key definitions.
static com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata getAlbumMetadata()
          Returns metadata for the Album table.
static com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata getBandAndAlbumMetadata(boolean isBandRoot, boolean isAlbumRelationshipExclusive)
          Returns metadata for the Band and Album table with a relationship between the two tables.
static com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata getBandMetadata()
          Returns metadata for the Band table.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

BANDTABLE

public static final java.lang.String BANDTABLE
See Also:
Constant Field Values

BAND_NAME_FIELD

public static final java.lang.String BAND_NAME_FIELD
See Also:
Constant Field Values

BAND_GENRE_FIELD

public static final java.lang.String BAND_GENRE_FIELD
See Also:
Constant Field Values

ALBUMTABLE

public static final java.lang.String ALBUMTABLE
See Also:
Constant Field Values

ALBUM_BANDNAME_FIELD

public static final java.lang.String ALBUM_BANDNAME_FIELD
See Also:
Constant Field Values

ALBUM_NAME_FIELD

public static final java.lang.String ALBUM_NAME_FIELD
See Also:
Constant Field Values

ALBUM_YEAR_FIELD

public static final java.lang.String ALBUM_YEAR_FIELD
See Also:
Constant Field Values

ALBUM_TRACKS_FIELD

public static final java.lang.String ALBUM_TRACKS_FIELD
See Also:
Constant Field Values

ALBUM_OCC_FIELD

public static final java.lang.String ALBUM_OCC_FIELD
See Also:
Constant Field Values

BANDALBUM_REL

public static final java.lang.String BANDALBUM_REL
See Also:
Constant Field Values
Constructor Detail

AlbumCatalogMetadata

public AlbumCatalogMetadata()
Method Detail

getBandMetadata

public static com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata getBandMetadata()
Returns metadata for the Band table.

Returns:
Metadata

getBandAndAlbumMetadata

public static com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata getBandAndAlbumMetadata(boolean isBandRoot,
                                                                                            boolean isAlbumRelationshipExclusive)
Returns metadata for the Band and Album table with a relationship between the two tables. Note that metadata for every table used in the query must be added.

Parameters:
isBandRoot - specifies if top level DataObjects in Datagraph are going to be from the Band table.
isAlbumRelationshipExclusive - an exclusive relationship does a left outer join between the two tables and an inclusive relationship does an inner join. Therefore, when a query is done with this metadata, even if a band has no related albums in the album table, it will still be included in the Datagraph.
Returns:
Metadata

getAlbumMetadata

public static com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata getAlbumMetadata()
Returns metadata for the Album table.

Returns:
Metadata

addBandTable

public static void addBandTable(com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata metadata,
                                boolean isRoot)
Adds Band table metadata, which includes columns and primary key definitions.

Parameters:
metadata - the metadata to which the Band table definition is added
isRoot - specifies if top level DataObjects in Datagraph are going to be from the Band table.

addAlbumTable

public static void addAlbumTable(com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata metadata,
                                 boolean isRoot)
Adds Album table metadata

Parameters:
metadata - the metadata to which the Album table definition is added
isRoot - specifies if top level DataObject in Datagraph are going to be from the Album table.

addAlbumFKRelationship

public static void addAlbumFKRelationship(com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata metadata,
                                          boolean isExclusive)
Adds a relationship between the Band and Album table. A relationship is defined as a foreign key in the Album table. Note that a foreign key in JDBC Mediator relational metadata does NOT mean that there has to be a corresponding foreign key constraint in the database; i.e. foreign keys in jdbc mediator relational metadata are not used for referential integrity, their purpose is to enable joins between fields of two tables, so related data can be browsed between DataObjects.

Parameters:
metadata - the metadata to which the relationship definition is added
isExclusive - specifies if an outer join or an inner join behavior is required. If true, an inner join will be performed; if false, a left outer join is performed

addBandNameFilter

public static void addBandNameFilter(com.ibm.websphere.sdo.mediator.jdbc.metadata.Metadata metadata)
Adds a filter on the NAME field of the Band table. A filter allows a parameter used in a SQL query to be defined at the time when a Datagraph is retrieved from a JDBC Mediator

Parameters:
metadata - the metadata to which the filter definition is added