Examples of JDBCFieldBridge


Examples of org.jboss.as.cmp.jdbc.bridge.JDBCFieldBridge

            // load eager load group
            if (node.eagerLoadMask != null) {
                JDBCFieldBridge[] tableFields = relatedEntity.getTableFields();
                for (int fieldInd = 0; fieldInd < tableFields.length; ++fieldInd) {
                    if (node.eagerLoadMask[fieldInd]) {
                        JDBCFieldBridge field = tableFields[fieldInd];
                        ref[0] = null;
                        index = field.loadArgumentResults(rs, index, ref);

                        if (cacheRelatedData) {
                            if (log.isTraceEnabled()) {
                                log.trace("Caching " +
                                        relatedEntity.getEntityName() +
                                        '[' +
                                        relatedId +
                                        "]." +
                                        field.getFieldName() + "=" + ref[0]);
                            }
                            relatedCache.addPreloadData(relatedId, field, ref[0]);
                        }
                    }
                }
View Full Code Here

Examples of org.jboss.as.cmp.jdbc.bridge.JDBCFieldBridge

                        // read the preload fields
                        if (eagerLoadMask != null) {
                            JDBCFieldBridge[] tableFields = selectEntity.getTableFields();
                            for (int i = 0; i < eagerLoadMask.length; i++) {
                                if (eagerLoadMask[i]) {
                                    JDBCFieldBridge field = tableFields[i];
                                    ref[0] = null;

                                    // read the value and store it in the readahead cache
                                    index = field.loadArgumentResults(rs, index, ref);

                                    if (addPk) {
                                        selectReadAheadCache.addPreloadData(pk, field, ref[0]);
                                    }
                                }
View Full Code Here

Examples of org.jboss.as.cmp.jdbc.bridge.JDBCFieldBridge

                        // read the preload fields
                        if (eagerLoadMask != null) {
                            JDBCFieldBridge[] tableFields = selectEntity.getTableFields();
                            for (int i = 0; i < eagerLoadMask.length; i++) {
                                if (eagerLoadMask[i]) {
                                    JDBCFieldBridge field = tableFields[i];
                                    ref[0] = null;

                                    // read the value and store it in the readahead cache
                                    index = field.loadArgumentResults(rs, index, ref);

                                    if (addPk) {
                                        selectReadAheadCache.addPreloadData(curPk, field, ref[0]);
                                    }
                                }
View Full Code Here

Examples of org.jboss.as.cmp.jdbc.bridge.JDBCFieldBridge

                    return buf;
                }
            }

            String alias = aliasManager.getAlias(path.getPath(path.size() - 2));
            JDBCFieldBridge field = (JDBCFieldBridge) path.getField();

            // if jdbc type is null then it should be a cmr field in
            // a one-to-one mapping that isn't a foreign key.
            // handle it the way the IS EMPTY on the one side of one-to-many
            // relationship is handled
            if (field.getJDBCType() == null) {
                existsClause(path, buf, !node.not);
                return buf;
            }

            // check the path for cmr fields and add them to join paths
View Full Code Here

Examples of org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCFieldBridge

               return buf;
            }
         }

         String alias = aliasManager.getAlias(path.getPath(path.size() - 2));
         JDBCFieldBridge field = (JDBCFieldBridge) path.getField();

         // if jdbc type is null then it should be a cmr field in
         // a one-to-one mapping that isn't a foreign key.
         // handle it the way the IS EMPTY on the one side of one-to-many
         // relationship is handled
         if(field.getJDBCType() == null)
         {
            existsClause(path, buf, !node.not);
            return buf;
         }
View Full Code Here

Examples of org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCFieldBridge

   public boolean isSelectField()
   {
      boolean result;
      if(selectObject instanceof JDBCFieldBridge)
      {
         JDBCFieldBridge field = (JDBCFieldBridge) selectObject;
         result = field.isCMPField();
      }
      else
      {
         result = false;
      }
View Full Code Here

Examples of org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCFieldBridge

         path = (ASTPath) child0;

         if(path.isCMPField())
         {
            // set the select object
            JDBCFieldBridge selectField = (JDBCFieldBridge) path.getCMPField();
            selectManager = selectField.getManager();
            selectObject = selectField;
            setTypeFactory(selectManager.getJDBCTypeFactory());

            // todo inner or left?
            //addLeftJoinPath(path);
            addInnerJoinPath(path);

            String alias = aliasManager.getAlias(path.getPath(path.size() - 2));
            SQLUtil.getColumnNamesClause(selectField, alias, sql);
         }
         else
         {
            JDBCAbstractEntityBridge selectEntity = (JDBCAbstractEntityBridge) path.getEntity();
            selectManager = selectEntity.getManager();
            selectObject = selectEntity;
            setTypeFactory(selectEntity.getManager().getJDBCTypeFactory());

            final String alias = aliasManager.getAlias(path.getPath());
            if(select.distinct)
            {
               SQLUtil.getSearchableColumnNamesClause(selectEntity.getTableFields(), alias, sql);
            }
            else
            {
               SQLUtil.getColumnNamesClause(selectEntity.getTableFields(), alias, sql);
            }

            /*
            if(readAhead.isOnFind())
            {
               String eagerLoadGroupName = readAhead.getEagerLoadGroup();
               boolean[] loadGroupMask = selectEntity.getLoadGroupMask(eagerLoadGroupName);
               SQLUtil.appendColumnNamesClause(
                  selectEntity.getTableFields(),
                  loadGroupMask,
                  alias,
                  sql
               );
            }
            */

            addLeftJoinPath(path);
         }
      }
      else
      {
         // the function should take a path expresion as a parameter
         path = getPathFromChildren(child0);

         if(path == null)
         {
            throw new IllegalStateException("The function in SELECT clause does not contain a path expression.");
         }

         if(path.isCMPField())
         {
            JDBCFieldBridge selectField = (JDBCFieldBridge) path.getCMPField();
            selectManager = selectField.getManager();
            setTypeFactory(selectManager.getJDBCTypeFactory());
            if(selectField.getJDBCType().hasMapper())
               this.functionJDBCType = selectField.getJDBCType();
         }
         else if(path.isCMRField())
         {
            JDBCFieldBridge cmrField = (JDBCFieldBridge) path.getCMRField();
            selectManager = cmrField.getManager();
            setTypeFactory(selectManager.getJDBCTypeFactory());
            addLeftJoinPath(path);
         }
         else
         {
View Full Code Here

Examples of org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCFieldBridge

      if(child0 instanceof ASTPath)
      {
         ASTPath path = (ASTPath) child0;
         addLeftJoinPath(path);

         JDBCFieldBridge field = (JDBCFieldBridge) path.getField();

         if(field instanceof JDBCAbstractCMRFieldBridge)
         {
            JDBCAbstractCMRFieldBridge cmrField = (JDBCAbstractCMRFieldBridge)field;
            final String alias;
View Full Code Here

Examples of org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCFieldBridge

      {
         throw new IllegalStateException("Can only visit cmp valued path node. "
            + "Should have been handled at a higher level.");
      }

      JDBCFieldBridge cmpField = (JDBCFieldBridge) node.getCMPField();

      // make sure this is mapped to a single column
      switch(node.type)
      {
         case EJBQLTypes.ENTITY_TYPE:
         case EJBQLTypes.VALUE_CLASS_TYPE:
            if(cmpField.getJDBCType().hasMapper() ||
               cmpField.getJDBCType().getParameterSetter() != null)
            {
               break;
            }
         case EJBQLTypes.UNKNOWN_TYPE:
            throw new IllegalStateException("Can not visit multi-column path " +
View Full Code Here

Examples of org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCFieldBridge

                                            StringBuffer buf)
   {
      JDBCAbstractEntityBridge parentEntity = cmrField.getEntity();
      JDBCAbstractEntityBridge childEntity = (JDBCAbstractEntityBridge)cmrField.getRelatedEntity();

      JDBCFieldBridge parentField;
      JDBCFieldBridge childField;

      if(cmrField.hasForeignKey())
      {
         // parent has the foreign keys
         JDBCFieldBridge[] parentFkFields = cmrField.getForeignKeyFields();
         int i = 0;
         while(i < parentFkFields.length)
         {
            parentField = parentFkFields[i++];
            childField = (JDBCFieldBridge)childEntity.getFieldByName(parentField.getFieldName());
            getJoinClause(parentField, parentAlias, childField, childAlias, buf);
            if(i < parentFkFields.length)
               buf.append(AND);
         }
      }
      else
      {
         // child has the foreign keys
         JDBCFieldBridge[] childFkFields = cmrField.getRelatedCMRField().getForeignKeyFields();
         int i = 0;
         while(i < childFkFields.length)
         {
            childField = childFkFields[i++];
            parentField = (JDBCFieldBridge)parentEntity.getFieldByName(childField.getFieldName());

            // add the sql
            getJoinClause(parentField, parentAlias, childField, childAlias, buf);
            if(i < childFkFields.length)
            {
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.