• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java Bindable类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中javax.persistence.metamodel.Bindable的典型用法代码示例。如果您正苦于以下问题:Java Bindable类的具体用法?Java Bindable怎么用?Java Bindable使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



Bindable类属于javax.persistence.metamodel包,在下文中一共展示了Bindable类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: containsRelation

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
public static boolean containsRelation(Object expr) {
	if (expr instanceof Join) {
		return true;
	} else if (expr instanceof SingularAttribute) {
		SingularAttribute<?, ?> attr = (SingularAttribute<?, ?>) expr;
		return attr.isAssociation();
	} else if (expr instanceof Path) {
		Path<?> attrPath = (Path<?>) expr;
		Bindable<?> model = attrPath.getModel();
		Path<?> parent = attrPath.getParentPath();
		return containsRelation(parent) || containsRelation(model);
	} else {
		// we may can do better here...
		return false;
	}
}
 
开发者ID:crnk-project,项目名称:crnk-framework,代码行数:17,代码来源:QueryUtil.java


示例2: toType

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
public static Type toType(Bindable bindable) {
	switch ( bindable.getBindableType() ) {
		case ENTITY_TYPE: {
			return (EntityType) bindable;
		}
		case SINGULAR_ATTRIBUTE: {
			return ( (SingularAttribute) bindable ).getType();
		}
		case PLURAL_ATTRIBUTE: {
			return ( (PluralAttribute) bindable ).getElementType();
		}
		default: {
			throw new ParsingException( "Unexpected Bindable type : " + bindable );
		}
	}
}
 
开发者ID:hibernate,项目名称:hibernate-semantic-query,代码行数:17,代码来源:Helper.java


示例3: getPath

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
@SuppressWarnings("unchecked")
public <E, F> Path<F> getPath(Root<E> root, List<Attribute<?, ?>> attributes) {
    Path<?> path = root;
    for (Attribute<?, ?> attribute : attributes) {
        boolean found = false;
        if (path instanceof FetchParent) {
            for (Fetch<E, ?> fetch : ((FetchParent<?, E>) path).getFetches()) {
                if (attribute.getName().equals(fetch.getAttribute().getName()) && (fetch instanceof Join<?, ?>)) {
                    path = (Join<E, ?>) fetch;
                    found = true;
                    break;
                }
            }
        }
        if (!found) {
            if ((attributes.indexOf(attribute) != (attributes.size() - 1)) && (attribute instanceof Bindable)
                    && Identifiable.class.isAssignableFrom(((Bindable<?>) attribute).getBindableJavaType()) && (path instanceof From)) {
                path = ((From<?, ?>) path).join(attribute.getName(), JoinType.LEFT);
            } else {
                path = path.get(attribute.getName());
            }
        }
    }
    return (Path<F>) path;
}
 
开发者ID:jpasearch,项目名称:jpasearch,代码行数:26,代码来源:JpaUtil.java


示例4: hibernatePluralPathTest

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
@Test
public void hibernatePluralPathTest() {
	CriteriaBuilder build = em.getCriteriaBuilder();
	CriteriaQuery<OneToManyInstance> critQ = build.createQuery(OneToManyInstance.class);
	Root<OneToManyInstance> resultRoot = critQ.from(OneToManyInstance.class);
	Path pluralPath = resultRoot.get("many");
	Bindable shouldBePluralAttribute = pluralPath.getModel();
	assertNotNull(shouldBePluralAttribute);

	assertTrue(shouldBePluralAttribute instanceof PluralAttribute);
}
 
开发者ID:gdjennings,项目名称:elrest-java,代码行数:12,代码来源:JPAFilterImplTest.java


示例5: containsRelation

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
public static boolean containsRelation(Object expr) {
  if (expr instanceof Join) {
    return true;
  }
  else if (expr instanceof SingularAttribute) {
    SingularAttribute<?, ?> attr = (SingularAttribute<?, ?>) expr;
    return attr.isAssociation();
  }
  else if (expr instanceof Path) {
    Path<?> attrPath = (Path<?>) expr;
    Bindable<?> model = attrPath.getModel();
    Path<?> parent = attrPath.getParentPath();
    return containsRelation(parent) || containsRelation(model);
  }
  else {
    // we may can do better here...
    return false;
  }
}
 
开发者ID:katharsis-project,项目名称:katharsis-framework,代码行数:20,代码来源:QueryUtil.java


示例6: getName

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
private String getName(Bindable<?> bindable) {
    if (bindable.getBindableType() == BindableType.ENTITY_TYPE) {
        EntityType<?> entityType = (EntityType<?>)bindable;
        return entityType.getName();
    } else {
        Attribute<?, ?> attribute = (Attribute<?, ?>)bindable;
        return attribute.getName();
    }
}
 
开发者ID:ArneLimburg,项目名称:jpasecurity,代码行数:10,代码来源:CriteriaEntityFilter.java


示例7: getEntityType

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
/**
 * Get the Breeze name of the entity type. For collections, Breeze expects the name of the
 * element type.
 * 
 * @param propType
 * @return
 */
Class getEntityType(Attribute attr) {
    if (attr instanceof Bindable) {
        return ((Bindable)attr).getBindableJavaType();
    } else {
        throw new RuntimeException("Not Bindable: " + attr);
    }
}
 
开发者ID:Breeze,项目名称:breeze.server.java,代码行数:15,代码来源:JPAMetadata.java


示例8: isDistinctable

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
static boolean isDistinctable(MetaJpaConstructor<?, ?, ?> projection, int columnIndex) {
    logger.debug("isDistinctable({},{})", projection, columnIndex);
    boolean ret = Bindable.class.isAssignableFrom(projection.getConstructorParameterTypes().get(columnIndex)) &&
                  !NotDistinctable.class.isAssignableFrom(((Bindable<?>)projection.getParameters().get(columnIndex)).getBindableJavaType()) ||
                  !Bindable.class.isAssignableFrom(projection.getConstructorParameterTypes().get(columnIndex)) &&
                  NotDistinctable.class.isAssignableFrom(projection.getParameters().get(columnIndex).getJavaType());
    logger.debug("isDistinctable -> {}", ret);
    return ret;
}
 
开发者ID:solita,项目名称:query-utils,代码行数:10,代码来源:ProjectionUtil.java


示例9: collectEmbeddableFromParts

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
static Object collectEmbeddableFromParts(Metamodel metamodel, Bindable<?> attr, Iterable<Object> columns) {
    logger.debug("collectEmbeddableFromParts({},{},{})", new Object[] {metamodel, attr, columns});
    List<Object> cols = newList(columns);
    List<? extends Attribute<?, ?>> embeddableAttributes = getEmbeddableAttributes(attr, metamodel);
    if (embeddableAttributes.size() != cols.size()) {
        throw new IllegalStateException("Expected same size for: " + embeddableAttributes + ", " + cols);
    }
    Class<?> embeddableClass = getEmbeddableType(attr, metamodel).getJavaType();
    try {
        Object ret = instantiate(embeddableClass);
        for (Tuple2<? extends Attribute<?, ?>, Object> a: zip(embeddableAttributes, cols)) {
            Member member = a._1.getJavaMember();
            if (member instanceof Field) {
                Field f = (Field)member;
                f.setAccessible(true);
                f.set(ret, a._2);
            } else {
                Method m = (Method)member;
                if (m.getParameterTypes().length == 1 && head(m.getParameterTypes()).isAssignableFrom(a._1.getJavaType())) {
                    m.setAccessible(true);
                    m.invoke(ret, a._2);
                } else {
                    throw new UnsupportedOperationException("not implemented. Run, Forrest, run!");
                }
            }
        }
        logger.debug("collectEmbeddableFromParts -> {}", ret);
        return ret;
    } catch (Exception e)  {
        throw new RuntimeException(e);
    }
}
 
开发者ID:solita,项目名称:query-utils,代码行数:33,代码来源:EmbeddableUtil.java


示例10: optionalSubtype

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
public static <E, T> SingularAttribute<E, Option<T>> optionalSubtype(SingularAttribute<? extends E, T> attribute) throws IllegalArgumentException {
    if (attribute instanceof PseudoAttribute) {
        throw new IllegalArgumentException("No reason to wrap a PseudoAttribute. Right?");
    }
    if (attribute instanceof Bindable && Option.class.isAssignableFrom(((Bindable<?>) attribute).getBindableJavaType())) {
        throw new IllegalArgumentException("No reason to wrap an Option<?> type. Right?");
    }
    if (attribute instanceof AdditionalQueryPerformingAttribute) {
        List<Attribute<?,?>> parameters = ((AdditionalQueryPerformingAttribute) attribute).getConstructor().getParameters();
        if (parameters.size() == 1 && Option.class.isAssignableFrom(head(parameters).getJavaType())) {
            throw new IllegalArgumentException("No reason to wrap an Option<?> type. Right?");
        }
    }
    return OptionalAttribute.Constructors.optional(attribute);
}
 
开发者ID:solita,项目名称:query-utils,代码行数:16,代码来源:Cast.java


示例11: isRequiredByQueryAttribute

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
public static boolean isRequiredByQueryAttribute(Attribute<?,?> param) {
    if (param == null) {
        return true;
    }
    if (unwrap(PseudoAttribute.class, param).isDefined()) {
        return true;
    }
    
    if (param instanceof AdditionalQueryPerformingAttribute && ((AdditionalQueryPerformingAttribute) param).getConstructor() instanceof TransparentProjection) {
        return isRequiredByQueryAttribute(((TransparentProjection)((AdditionalQueryPerformingAttribute) param).getConstructor()).getWrapped());
    }
    
    if (param instanceof JoiningAttribute && param instanceof SingularAttribute) {
        return forall(QueryUtils_.isRequiredByQueryAttribute, ((JoiningAttribute) param).getAttributes());
    } else if (param instanceof JoiningAttribute) {
        return true;
    }
    
    if (unwrap(OptionalAttribute.class, param).isDefined()) {
        return false;
    }
    
    if (param instanceof Bindable && Option.class.isAssignableFrom(((Bindable<?>) param).getBindableJavaType())) {
        return false;
    }
    
    return true;
}
 
开发者ID:solita,项目名称:query-utils,代码行数:29,代码来源:QueryUtils.java


示例12: resolveSelection

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
/**
 * Modifies existing query!
 */
public <E, T1, A1 extends Attribute<? super E, ?> & Bindable<T1>> CriteriaQuery<E>
innerJoin(A1 attribute, CriteriaQuery<E> query) {
    @SuppressWarnings("unchecked")
    From<?, E> from = (From<?, E>) resolveSelection(query);
    join(from, attribute, JoinType.INNER);
    return query;
}
 
开发者ID:solita,项目名称:query-utils,代码行数:11,代码来源:Restrict.java


示例13: getModel

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
@Override
public Bindable<X> getModel() {
	// TODO Auto-generated method stub
	return null;
}
 
开发者ID:wwu-pi,项目名称:tap17-muggl-javaee,代码行数:6,代码来源:MugglPath.java


示例14: getModel

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
@Override
public Bindable<X> getModel()
{
	// TODO Auto-generated method stub
	return null;
}
 
开发者ID:ltearno,项目名称:hexa.tools,代码行数:7,代码来源:PathImpl.java


示例15: set

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
public static <E,Y,Y2,Y3,Y4,Y5,A1 extends Attribute<E,?> & Bindable<Y>, A2 extends Attribute<? super Y,?> & Bindable<Y2>, A3 extends Attribute<? super Y2,?> & Bindable<Y3>, A4 extends Attribute<? super Y3,?> & Bindable<Y4>, A5 extends Attribute<? super Y4,?> & Bindable<Y5>>
SetAttribute<E,Y5> set(A1 a1, A2 a2, A3 a3, A4 a4, A5 a5) {
    return new JoiningSetAttribute<E,Y5,SetAttribute<E,Y5>>(newList((Attribute<?,?>)a1, (Attribute<?,?>)a2, (Attribute<?,?>)a3, (Attribute<?,?>)a4, (Attribute<?,?>)a5));
}
 
开发者ID:solita,项目名称:query-utils,代码行数:5,代码来源:JoiningAttribute.java


示例16: collection

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
public static <E,Y,R, A1 extends Attribute<E,?> & Bindable<Y>>
CollectionAttribute<E, R> collection(A1 a1, CollectionAttribute<? super Y,R> a2) {
    return JoiningAttribute.Constructors.collection(a1, a2);
}
 
开发者ID:solita,项目名称:query-utils,代码行数:5,代码来源:Related.java


示例17: list

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
public static <E,Y,Y2,Y3,A1 extends Attribute<E,?> & Bindable<Y>, A2 extends Attribute<? super Y,?> & Bindable<Y2>, A3 extends Attribute<? super Y2,?> & Bindable<Y3>>
ListAttribute<E,Y3> list(A1 a1, A2 a2, A3 a3) {
    return new JoiningListAttribute<E,Y3,ListAttribute<E,Y3>>(newList((Attribute<?,?>)a1, (Attribute<?,?>)a2, (Attribute<?,?>)a3));
}
 
开发者ID:solita,项目名称:query-utils,代码行数:5,代码来源:JoiningAttribute.java


示例18: set

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
public static <E,Y,R, A extends Attribute<E,?> & Bindable<Y>>
SetAttribute<E, R> set(A a1, SetAttribute<? super Y, R> a2) {
    return JoiningAttribute.Constructors.set(a1, a2);
}
 
开发者ID:solita,项目名称:query-utils,代码行数:5,代码来源:Related.java


示例19: list

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
public static <E,Y,R, A extends Attribute<E,?> & Bindable<Y>>
ListAttribute<E, R> list(A a1, ListAttribute<? super Y,R> a2) {
    return JoiningAttribute.Constructors.list(a1, a2);
}
 
开发者ID:solita,项目名称:query-utils,代码行数:5,代码来源:Related.java


示例20: related

import javax.persistence.metamodel.Bindable; //导入依赖的package包/类
public <E extends Identifiable<?>, R1, R2, R3, A1 extends Attribute<? super E, ?> & Bindable<R1>, A2 extends Attribute<? super R1, ?> & Bindable<R2>, A3 extends Attribute<? super R2, ?> & Bindable<R3>>
CriteriaQuery<R3> related(A1 r1, A2 r2, A3 r3, CriteriaQuery<E> query) {
    return doRelated(query, r1, r2, r3);
}
 
开发者ID:solita,项目名称:query-utils,代码行数:5,代码来源:JpaCriteriaQuery.java



注:本文中的javax.persistence.metamodel.Bindable类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java XtextDocument类代码示例发布时间:2022-05-22
下一篇:
Java Context类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap