Package org.eclipse.persistence.mappings.querykeys

Examples of org.eclipse.persistence.mappings.querykeys.QueryKey


  DatabaseMapping resolveMapping(Expression expression) {

    PathResolver resolver = pathResolver();

    QueryKey oldQueryKey          = resolver.queryKey;
    DatabaseMapping oldMapping    = resolver.mapping;
    ClassDescriptor oldDescriptor = resolver.descriptor;

    try {
      resolver.mapping    = null;
View Full Code Here


   */
  Object resolveMappingObject(Expression expression) {

    PathResolver resolver = pathResolver();

    QueryKey oldQueryKey          = resolver.queryKey;
    DatabaseMapping oldMapping    = resolver.mapping;
    ClassDescriptor oldDescriptor = resolver.descriptor;

    try {
      resolver.mapping    = null;
View Full Code Here

  private Class<?> resolveMappingType(AbstractPathExpression expression) {

    PathResolver resolver = pathResolver();

    QueryKey oldQueryKey          = resolver.queryKey;
    DatabaseMapping oldMapping    = resolver.mapping;
    ClassDescriptor oldDescriptor = resolver.descriptor;

    try {
      resolver.mapping    = null;
View Full Code Here

  QueryKey resolveQueryKey(org.eclipse.persistence.jpa.jpql.parser.Expression expression) {

    PathResolver resolver = pathResolver();

    QueryKey oldQueryKey          = resolver.queryKey;
    DatabaseMapping oldMapping    = resolver.mapping;
    ClassDescriptor oldDescriptor = resolver.descriptor;

    try {
      resolver.mapping    = null;
View Full Code Here

        String attributeName = expression.getName();

        DatabaseMapping mapping = baseDescriptor.getObjectBuilder().getMappingForAttributeName(attributeName);

        if (mapping == null) {
            QueryKey queryKey = baseDescriptor.getQueryKeyNamed(attributeName);
            if (queryKey != null) {
                if (queryKey.isForeignReferenceQueryKey()) {
                    descriptor = getSession().getDescriptor(((ForeignReferenceQueryKey)queryKey).getReferenceClass());
                } else// if (queryKey.isDirectQueryKey())
                 {
                    descriptor = queryKey.getDescriptor();
                }
            }
            if (descriptor == null) {
                throw QueryException.invalidExpressionForQueryItem(expression, this);
            }
View Full Code Here

                    baseExp = ((QueryKeyExpression) baseExp).getBaseExpression();
                } else {
                    newDescriptor = mapping.getReferenceDescriptor();
                }
            } else {
                QueryKey queryKey = getLeafQueryKeyFor(baseExp, ((QueryKeyExpression) baseExp).descriptor);
                if ((queryKey != null) && !queryKey.isDirectQueryKey()){
                    outerJoin = ((QueryKeyExpression) baseExp).shouldUseOuterJoin();
                    newDescriptor = queryKey.getDescriptor();
                }
            }
        } else if (baseExp.isExpressionBuilder()) {
            newDescriptor = normalizer.getSession().getDescriptor(((ExpressionBuilder) baseExp).getQueryClass());
        }
View Full Code Here

        String attributeName = expression.getName();

        DatabaseMapping mapping = baseDescriptor.getObjectBuilder().getMappingForAttributeName(attributeName);

        if (mapping == null) {
            QueryKey queryKey = baseDescriptor.getQueryKeyNamed(attributeName);
            if (queryKey != null) {
                if (queryKey.isForeignReferenceQueryKey()) {
                    descriptor = getSession().getDescriptor(((ForeignReferenceQueryKey)queryKey).getReferenceClass());
                } else// if (queryKey.isDirectQueryKey())
                 {
                    descriptor = queryKey.getDescriptor();
                }
            }
            if (descriptor == null) {
                throw QueryException.invalidQueryKeyInExpression(attributeName);
            }
View Full Code Here

        }
       
        // EL Bug 326977
        Vector fieldsToTranslate = (Vector) clonedDescriptor.getFields().clone();
        for (Iterator qkIterator = clonedDescriptor.getQueryKeys().values().iterator(); qkIterator.hasNext();) {
            QueryKey queryKey = (QueryKey)qkIterator.next();
            if (queryKey.isDirectQueryKey()) {
                DatabaseField field = ((DirectQueryKey)queryKey).getField();
                fieldsToTranslate.add(field);
            }
        }
       
View Full Code Here

     */
    protected void translateFields(ClassDescriptor clonedDescriptor, AbstractSession session) {
        // EL Bug 326977
        Vector fieldsToTranslate = (Vector) clonedDescriptor.getFields().clone();
        for (Iterator qkIterator = clonedDescriptor.getQueryKeys().values().iterator(); qkIterator.hasNext();) {
            QueryKey queryKey = (QueryKey)qkIterator.next();
            if (queryKey.isDirectQueryKey()) {
                DatabaseField field = ((DirectQueryKey)queryKey).getField();
                fieldsToTranslate.add(field);
            }
        }
       
View Full Code Here

            nullAllowed = mapping.isForeignReferenceMapping();
          }
        }
        // No mapping is defined for the single path, check for a query key
        else {
          QueryKey queryKey = descriptor.getQueryKeyNamed(path);

          if (queryKey != null) {
            // Make sure we keep track of its type
            if (type != null) {
              type[0] = queryContext.calculateQueryKeyType(queryKey);
            }

            // This will tell us how to create the Expression
            collectionMapping = queryKey.isCollectionQueryKey();

            // Retrieve the reference descriptor so we can continue traversing the path
            if (!last && queryKey.isForeignReferenceQueryKey()) {
              ForeignReferenceQueryKey referenceQueryKey = (ForeignReferenceQueryKey) queryKey;
              descriptor = queryContext.getDescriptor(referenceQueryKey.getReferenceClass());
            }
          }
          // Nothing was found
View Full Code Here

TOP

Related Classes of org.eclipse.persistence.mappings.querykeys.QueryKey

Copyright © 2018 www.massapicom. 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.