Examples of QualifiedDBIdentifier


Examples of org.apache.openjpa.jdbc.identifier.QualifiedDBIdentifier

    /**
     * Creates the object-level representation of the sequence table.
     */
    private void buildTable() {
        QualifiedDBIdentifier path = QualifiedDBIdentifier.getPath(_table);
        DBIdentifier tableName = path.getIdentifier();
        DBIdentifier schemaName = path.getSchemaName();
        if (DBIdentifier.isEmpty(schemaName))
            schemaName = Schemas.getNewTableSchemaIdentifier(_conf);

        // build the table in one of the designated schemas
        SchemaGroup group = new SchemaGroup();
View Full Code Here

Examples of org.apache.openjpa.jdbc.identifier.QualifiedDBIdentifier

    /**
     * Creates the object-level representation of the sequence table.
     */
    private void buildTable() {
        QualifiedDBIdentifier path = QualifiedDBIdentifier.getPath(_table);
        DBIdentifier tableName = path.getIdentifier();
        DBIdentifier schemaName = path.getSchemaName();
        if (DBIdentifier.isEmpty(schemaName))
            schemaName = Schemas.getNewTableSchemaIdentifier(_conf);

        // build the table in one of the designated schemas
        SchemaGroup group = new SchemaGroup();
View Full Code Here

Examples of org.apache.openjpa.jdbc.identifier.QualifiedDBIdentifier

        // we can create the table for each schema within the PU
        // in here.
       
        Schema[] schemas = group.getSchemas();
        for (int i = 0; i < schemas.length; i++) {
            QualifiedDBIdentifier path = QualifiedDBIdentifier.getPath(_table);
            DBIdentifier schemaName = path.getSchemaName();
            if (DBIdentifier.isEmpty(schemaName)) {
                schemaName = Schemas.getNewTableSchemaIdentifier(_conf);
            }
            if (DBIdentifier.isNull(schemaName)) {
                schemaName = schemas[i].getIdentifier();
View Full Code Here

Examples of org.apache.openjpa.jdbc.identifier.QualifiedDBIdentifier

     * Creates the object-level representation of the sequence table.
     */
    private void buildTable() {
        DBIdentifier tableName = DBIdentifier.NULL;
        DBIdentifier schemaName = DBIdentifier.NULL;
        QualifiedDBIdentifier path = QualifiedDBIdentifier.getPath(_table);
        if (!DBIdentifier.isEmpty(path.getSchemaName())) {
            schemaName = path.getSchemaName();
            tableName = path.getUnqualifiedName();
        }
        else {
            tableName = _table;
        }
       
View Full Code Here

Examples of org.apache.openjpa.jdbc.identifier.QualifiedDBIdentifier

    }

    @Override
    public void addSchema(ClassMapping mapping, SchemaGroup group) {
        // sequence already exists?
        QualifiedDBIdentifier path = QualifiedDBIdentifier.getPath(_seqName);
        if (group.isKnownSequence(path))
            return;

        DBIdentifier schemaName = getSchemaIdentifier();
        if (DBIdentifier.isEmpty(schemaName)) {
            schemaName = path.getSchemaName();
            if (DBIdentifier.isEmpty(schemaName))
                schemaName = Schemas.getNewTableSchemaIdentifier(_conf);
        }

        // create table in this group
View Full Code Here

Examples of org.apache.openjpa.jdbc.identifier.QualifiedDBIdentifier

    /**
     * Creates the sequence object.
     */
    private void buildSequence() {
        QualifiedDBIdentifier path = QualifiedDBIdentifier.getPath(_seqName);
        DBIdentifier seqName = path.getIdentifier();
        // JPA 2 added schema as a configurable attribute on 
        // sequence generator.  OpenJPA <= 1.x allowed this via
        // schema.sequence on the sequence name.  Specifying a schema
        // name on the annotation or in the orm will override the old
        // behavior.
        DBIdentifier schemaName = _schema;
        if (DBIdentifier.isEmpty(schemaName)) {
            schemaName = path.getSchemaName();
            if (DBIdentifier.isEmpty(schemaName))
                schemaName = Schemas.getNewTableSchemaIdentifier(_conf);
        }

        // build the sequence in one of the designated schemas
View Full Code Here

Examples of org.apache.openjpa.jdbc.identifier.QualifiedDBIdentifier

    }

    public DBIdentifier getSecondaryTableIdentifier(DBIdentifier tableName) {
        // if no secondary table joins, bad table name, exact match,
        // or an already-qualified table name, nothing to do
        QualifiedDBIdentifier path = QualifiedDBIdentifier.getPath(tableName);
        if (_seconds == null || DBIdentifier.isNull(tableName)
            || _seconds.containsKey(tableName)
            || !DBIdentifier.isNull(path.getSchemaName()))
            return tableName;

        // decide which class-level join table is best match
        DBIdentifier best = tableName;
        int pts = 0;
        DBIdentifier fullJoin = DBIdentifier.NULL;
        DBIdentifier join = DBIdentifier.NULL;
        for (Iterator<DBIdentifier> itr = _seconds.keySet().iterator(); itr.hasNext();) {
            // award a caseless match without schema 2 points
            fullJoin = (DBIdentifier) itr.next();
            QualifiedDBIdentifier joinPath = QualifiedDBIdentifier.getPath(fullJoin);
            if (joinPath.isUnqualifiedObject() && pts < 2 && fullJoin.equalsIgnoreCase(tableName)) {
                best = fullJoin;
                pts = 2;
            } else if (joinPath.isUnqualifiedObject())
                continue;

            // immediately return an exact match with schema
            join = joinPath.getIdentifier();
            if (join.equals(tableName))
                return fullJoin;

            // caseless match with schema worth 1 point
            if (pts < 1 && join.equalsIgnoreCase(tableName)) {
View Full Code Here

Examples of org.apache.openjpa.jdbc.identifier.QualifiedDBIdentifier

        // get the columns for the join with the best match for table name
        List<Column> cols = _seconds.get(getSecondaryTableIdentifier(tableName));
        if (cols == null) {
            // possible that given table has extra info the join table
            // doesn't have; strip it
            QualifiedDBIdentifier path = QualifiedDBIdentifier.getPath(tableName);
            if (!DBIdentifier.isNull(path.getSchemaName())) {
                tableName = path.getIdentifier();
                cols = _seconds.get(getSecondaryTableIdentifier(tableName));
            }
        }
        if (cols == null) {
            return Collections.emptyList();
View Full Code Here

Examples of org.apache.openjpa.jdbc.identifier.QualifiedDBIdentifier

    public Table findTable(DBIdentifier name) {
        if (name == null)
            return null;

        QualifiedDBIdentifier path = QualifiedDBIdentifier.getPath(name);
        return findTable(path);
    }
View Full Code Here

Examples of org.apache.openjpa.jdbc.identifier.QualifiedDBIdentifier

        Map<DBIdentifier, Collection<DBIdentifier>> schemas = new HashMap<DBIdentifier, Collection<DBIdentifier>>();
        DBIdentifier schema = DBIdentifier.NULL, table = DBIdentifier.NULL;
        Collection<DBIdentifier> tables = null;
        for (int i = 0; i < args.length; i++) {
            QualifiedDBIdentifier path = QualifiedDBIdentifier.getPath(args[i]);
            schema = path.getSchemaName();
            table = path.getIdentifier();

            // if just a schema name, map schema to null
            if (DBIdentifier.isNull(table) && !schemas.containsKey(schema))
                schemas.put(schema, null);
            else if (!DBIdentifier.isNull(table)) {
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.