类javax.persistence.metamodel.MapAttribute源码实例Demo

下面列出了怎么用javax.persistence.metamodel.MapAttribute的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: lams   文件: MapKeyHelpers.java
public MapKeyAttribute(CriteriaBuilderImpl criteriaBuilder, MapAttribute<?, K, ?> attribute) {
	this.attribute = attribute;
	this.jpaType = attribute.getKeyType();
	this.jpaBinableJavaType = attribute.getKeyJavaType();
	this.jpaBindableType = Type.PersistenceType
			.ENTITY.equals( jpaType.getPersistenceType() )
			? BindableType.ENTITY_TYPE
			: BindableType.SINGULAR_ATTRIBUTE;

	String guessedRoleName = determineRole( attribute );
	SessionFactoryImplementor sfi = criteriaBuilder.getEntityManagerFactory().getSessionFactory();
	mapPersister = sfi.getCollectionPersister( guessedRoleName );
	if ( mapPersister == null ) {
		throw new IllegalStateException( "Could not locate collection persister [" + guessedRoleName + "]" );
	}
	mapKeyType = mapPersister.getIndexType();
	if ( mapKeyType == null ) {
		throw new IllegalStateException( "Could not determine map-key type [" + guessedRoleName + "]" );
	}

	this.persistentAttributeType = mapKeyType.isEntityType()
			? PersistentAttributeType.MANY_TO_ONE
			: mapKeyType.isComponentType()
					? PersistentAttributeType.EMBEDDED
					: PersistentAttributeType.BASIC;
}
 
源代码2 项目: lams   文件: AbstractPathImpl.java
@Override
@SuppressWarnings({ "unchecked" })
public <Y> Path<Y> get(String attributeName) {
	if ( ! canBeDereferenced() ) {
		throw illegalDereference();
	}

	final Attribute attribute = locateAttribute( attributeName );

	if ( attribute.isCollection() ) {
		final PluralAttribute<X,Y,?> pluralAttribute = (PluralAttribute<X,Y,?>) attribute;
		if ( PluralAttribute.CollectionType.MAP.equals( pluralAttribute.getCollectionType() ) ) {
			return (PluralAttributePath<Y>) this.<Object,Object,Map<Object, Object>>get( (MapAttribute) pluralAttribute );
		}
		else {
			return (PluralAttributePath<Y>) this.get( (PluralAttribute) pluralAttribute );
		}
	}
	else {
		return get( (SingularAttribute<X,Y>) attribute );
	}
}
 
源代码3 项目: lams   文件: AbstractManagedType.java
@Override
@SuppressWarnings({ "unchecked" })
public MapAttribute<? super X, ?, ?> getMap(String name) {
	PluralAttribute<? super X, ?, ?> attribute = getPluralAttribute( name );
	if ( attribute == null && getSupertype() != null ) {
		attribute = getSupertype().getPluralAttribute( name );
	}
	basicMapCheck( attribute, name );
	return (MapAttribute<? super X, ?, ?>) attribute;
}
 
源代码4 项目: lams   文件: AbstractManagedType.java
@Override
@SuppressWarnings("unchecked")
public MapAttribute<X, ?, ?> getDeclaredMap(String name) {
	final PluralAttribute<X,?,?> attribute = declaredPluralAttributes.get( name );
	basicMapCheck( attribute, name );
	return ( MapAttribute<X,?,?> ) attribute;
}
 
源代码5 项目: lams   文件: AbstractManagedType.java
@Override
@SuppressWarnings({ "unchecked" })
public <K, V> MapAttribute<? super X, K, V> getMap(String name, Class<K> keyType, Class<V> valueType) {
	PluralAttribute<? super X, ?, ?> attribute = getPluralAttribute( name );
	if ( attribute == null && getSupertype() != null ) {
		attribute = getSupertype().getPluralAttribute( name );
	}
	checkMapValueType( attribute, name, valueType );
	final MapAttribute<? super X, K, V> mapAttribute = ( MapAttribute<? super X, K, V> ) attribute;
	checkMapKeyType( mapAttribute, name, keyType );
	return mapAttribute;
}
 
源代码6 项目: lams   文件: AbstractManagedType.java
@Override
@SuppressWarnings("unchecked")
public <K, V> MapAttribute<X, K, V> getDeclaredMap(String name, Class<K> keyType, Class<V> valueType) {
	final PluralAttribute<X,?,?> attribute = declaredPluralAttributes.get( name );
	checkMapValueType( attribute, name, valueType );
	final MapAttribute<X, K, V> mapAttribute = ( MapAttribute<X, K, V> ) attribute;
	checkMapKeyType( mapAttribute, name, keyType );
	return mapAttribute;
}
 
源代码7 项目: lams   文件: MapEntryExpression.java
public MapEntryExpression(
		CriteriaBuilderImpl criteriaBuilder,
		Class<Map.Entry<K, V>> javaType,
		PathImplementor origin,
		MapAttribute<?, K, V> attribute) {
	super( criteriaBuilder, javaType);
	this.origin = origin;
	this.attribute = attribute;
}
 
源代码8 项目: lams   文件: AbstractFromImpl.java
private <K, V> MapJoinImplementor<X, K, V> constructJoin(MapAttribute<? super X, K, V> map, JoinType jt) {
	if ( jt.equals( JoinType.RIGHT ) ) {
		throw new UnsupportedOperationException( "RIGHT JOIN not supported" );
	}

	// TODO : runtime check that the attribute in fact belongs to this From's model/bindable

	final Class<V> attributeType = map.getBindableJavaType();
	return new MapAttributeJoin<X, K, V>( criteriaBuilder(), attributeType, this, map, jt );
}
 
源代码9 项目: lams   文件: AbstractFromImpl.java
@Override
@SuppressWarnings({"unchecked"})
public <X, Y> Join<X, Y> join(String attributeName, JoinType jt) {
	if ( !canBeJoinSource() ) {
		throw illegalJoin();
	}

	if ( jt.equals( JoinType.RIGHT ) ) {
		throw new UnsupportedOperationException( "RIGHT JOIN not supported" );
	}

	final Attribute<X, ?> attribute = (Attribute<X, ?>) locateAttribute( attributeName );
	if ( attribute.isCollection() ) {
		final PluralAttribute pluralAttribute = (PluralAttribute) attribute;
		if ( PluralAttribute.CollectionType.COLLECTION.equals( pluralAttribute.getCollectionType() ) ) {
			return (Join<X, Y>) join( (CollectionAttribute) attribute, jt );
		}
		else if ( PluralAttribute.CollectionType.LIST.equals( pluralAttribute.getCollectionType() ) ) {
			return (Join<X, Y>) join( (ListAttribute) attribute, jt );
		}
		else if ( PluralAttribute.CollectionType.SET.equals( pluralAttribute.getCollectionType() ) ) {
			return (Join<X, Y>) join( (SetAttribute) attribute, jt );
		}
		else {
			return (Join<X, Y>) join( (MapAttribute) attribute, jt );
		}
	}
	else {
		return (Join<X, Y>) join( (SingularAttribute) attribute, jt );
	}
}
 
源代码10 项目: lams   文件: AbstractFromImpl.java
@Override
@SuppressWarnings({"unchecked"})
public <X, K, V> MapJoin<X, K, V> joinMap(String attributeName, JoinType jt) {
	final Attribute<X, ?> attribute = (Attribute<X, ?>) locateAttribute( attributeName );
	if ( !attribute.isCollection() ) {
		throw new IllegalArgumentException( "Requested attribute was not a map" );
	}

	final PluralAttribute pluralAttribute = (PluralAttribute) attribute;
	if ( !PluralAttribute.CollectionType.MAP.equals( pluralAttribute.getCollectionType() ) ) {
		throw new IllegalArgumentException( "Requested attribute was not a map" );
	}

	return (MapJoin<X, K, V>) join( (MapAttribute) attribute, jt );
}
 
源代码11 项目: lams   文件: MapKeyHelpers.java
public MapKeySource(
		CriteriaBuilderImpl criteriaBuilder,
		Class<Map<K, V>> javaType,
		MapJoinImplementor<?,K,V> mapJoin,
		MapAttribute<?,K,V> attribute) {
	super( criteriaBuilder, javaType, null );
	this.mapJoin = mapJoin;
	this.mapAttribute = attribute;
}
 
源代码12 项目: lams   文件: AbstractPathImpl.java
@Override
@SuppressWarnings({ "unchecked" })
public <K, V, M extends Map<K, V>> Expression<M> get(MapAttribute<X, K, V> attribute) {
	if ( ! canBeDereferenced() ) {
		throw illegalDereference();
	}

	PluralAttributePath path = (PluralAttributePath) resolveCachedAttributePath( attribute.getName() );
	if ( path == null ) {
		path = new PluralAttributePath( criteriaBuilder(), this, attribute );
		registerAttributePath( attribute.getName(), path );
	}
	return path;
}
 
源代码13 项目: lams   文件: MapAttributeJoin.java
public MapAttributeJoin(
		CriteriaBuilderImpl criteriaBuilder,
		Class<V> javaType,
		PathSource<O> pathSource,
		MapAttribute<? super O, K, V> joinAttribute,
		JoinType joinType) {
	super( criteriaBuilder, javaType, pathSource, joinAttribute, joinType );
}
 
源代码14 项目: lams   文件: MapAttributeJoin.java
@SuppressWarnings("unchecked")
public TreatedMapAttributeJoin(MapAttributeJoin<O, K, ? super T> original, Class<T> treatAsType) {
	super(
			original.criteriaBuilder(),
			treatAsType,
			original.getPathSource(),
			(MapAttribute<? super O, K, T>) original.getAttribute(),
			original.getJoinType()
	);
	this.original = original;
	this.treatAsType = treatAsType;
}
 
源代码15 项目: lams   文件: AbstractManagedType.java
private void basicMapCheck(PluralAttribute<? super X, ?, ?> attribute, String name) {
	checkNotNull( "MapAttribute", attribute, name );
	if ( ! MapAttribute.class.isAssignableFrom( attribute.getClass() ) ) {
		throw new IllegalArgumentException( name + " is not a MapAttribute: " + attribute.getClass() );
	}
}
 
源代码16 项目: lams   文件: AbstractManagedType.java
private <K,V> void checkMapKeyType(MapAttribute<? super X, K, V> mapAttribute, String name, Class<K> keyType) {
	if ( mapAttribute.getKeyJavaType() != keyType ) {
		throw new IllegalArgumentException( "MapAttribute named " + name + " does not support a key of type " + keyType );
	}
}
 
源代码17 项目: lams   文件: MapEntryExpression.java
public MapAttribute<?, K, V> getAttribute() {
	return attribute;
}
 
源代码18 项目: lams   文件: AbstractFromImpl.java
@Override
public <K, V> MapJoin<X, K, V> join(MapAttribute<? super X, K, V> map) {
	return join( map, DEFAULT_JOIN_TYPE );
}
 
源代码19 项目: lams   文件: MapKeyHelpers.java
public MapAttribute<?,K,V> getAttribute() {
	return mapAttribute;
}
 
源代码20 项目: lams   文件: MapKeyHelpers.java
private String determineRole(MapAttribute<?,K,?> attribute) {
	return attribute.getDeclaringType().getJavaType().getName() +
			'.' + attribute.getName();
}
 
源代码21 项目: lams   文件: MapAttributeJoin.java
@Override
public MapAttribute<? super O, K, V> getAttribute() {
	return (MapAttribute<? super O, K, V>) super.getAttribute();
}
 
源代码22 项目: lams   文件: MapAttributeJoin.java
@Override
public MapAttribute<? super O, K, V> getModel() {
	return getAttribute();
}
 
源代码23 项目: olingo-odata2   文件: JPAEntityTypeMock.java
@Override
public MapAttribute<X, ?, ?> getDeclaredMap(final String arg0) {
  return null;
}
 
源代码24 项目: olingo-odata2   文件: JPAEntityTypeMock.java
@Override
public <K, V> MapAttribute<X, K, V> getDeclaredMap(final String arg0, final Class<K> arg1, final Class<V> arg2) {
  return null;
}
 
源代码25 项目: olingo-odata2   文件: JPAEntityTypeMock.java
@Override
public MapAttribute<? super X, ?, ?> getMap(final String arg0) {
  return null;
}
 
源代码26 项目: olingo-odata2   文件: JPAEntityTypeMock.java
@Override
public <K, V> MapAttribute<? super X, K, V> getMap(final String arg0, final Class<K> arg1, final Class<V> arg2) {
  return null;
}
 
源代码27 项目: olingo-odata2   文件: JPAManagedTypeMock.java
@Override
public MapAttribute<X, ?, ?> getDeclaredMap(final String arg0) {
  return null;
}
 
源代码28 项目: olingo-odata2   文件: JPAManagedTypeMock.java
@Override
public <K, V> MapAttribute<X, K, V> getDeclaredMap(final String arg0, final Class<K> arg1, final Class<V> arg2) {
  return null;
}
 
源代码29 项目: olingo-odata2   文件: JPAManagedTypeMock.java
@Override
public MapAttribute<? super X, ?, ?> getMap(final String arg0) {
  return null;
}
 
源代码30 项目: olingo-odata2   文件: JPAManagedTypeMock.java
@Override
public <K, V> MapAttribute<? super X, K, V> getMap(final String arg0, final Class<K> arg1, final Class<V> arg2) {
  return null;
}
 
 类所在包
 类方法
 同包方法