
br.eti.clairton.repository.Join Maven / Gradle / Ivy
package br.eti.clairton.repository;
import java.io.Serializable;
import javax.persistence.criteria.From;
import javax.persistence.criteria.JoinType;
import javax.persistence.metamodel.CollectionAttribute;
import javax.persistence.metamodel.ListAttribute;
import javax.persistence.metamodel.MapAttribute;
import javax.persistence.metamodel.PluralAttribute;
import javax.persistence.metamodel.SetAttribute;
/**
* Trata um relacionamento no Plural.
*
* @author Clairton Rodrigo Heinzen [email protected]
*/
interface Join extends Serializable {
public static final Join SET = new Join() {
private static final long serialVersionUID = 1L;
/**
* {@inheritDoc}
*/
@Override
public javax.persistence.criteria.Join join(final From from, final JoinType joinType, final PluralAttribute, ?, ?> attribute) {
@SuppressWarnings("unchecked")
final SetAttribute super Y, Y> attributes = ( SetAttribute super Y, Y> ) attribute;
@SuppressWarnings("unchecked")
final javax.persistence.criteria.Join join = ( javax.persistence.criteria.Join ) from.join(
attributes, joinType);
return join;
}
};
public static final Join LIST = new Join() {
private static final long serialVersionUID = 1L;
/**
* {@inheritDoc}
*/
@Override
public javax.persistence.criteria.Join join(final From from, final JoinType joinType, final PluralAttribute, ?, ?> attribute) {
@SuppressWarnings("unchecked")
final ListAttribute super Y, Y> attributes = ( ListAttribute super Y, Y> ) attribute;
@SuppressWarnings("unchecked")
final javax.persistence.criteria.Join join = ( javax.persistence.criteria.Join ) from.join(attributes, joinType);
return join;
}
};
public static final Join COLLECTION = new Join() {
private static final long serialVersionUID = 1L;
/**
* {@inheritDoc}
*/
@Override
public javax.persistence.criteria.Join join(final From from, final JoinType joinType, final PluralAttribute, ?, ?> attribute) {
@SuppressWarnings("unchecked")
final CollectionAttribute super Y, Y> attributes = ( CollectionAttribute super Y, Y> ) attribute;
@SuppressWarnings("unchecked")
final javax.persistence.criteria.Join join = ( javax.persistence.criteria.Join ) from.join(attributes, joinType);
return join;
}
};
public static final Join MAP = new Join() {
private static final long serialVersionUID = 1L;
/**
* {@inheritDoc}
*/
@Override
public javax.persistence.criteria.Join join(final From from, final JoinType joinType, final PluralAttribute, ?, ?> attribute) {
@SuppressWarnings("rawtypes")
final MapAttribute attributes = ( MapAttribute ) attribute;
@SuppressWarnings("unchecked")
final javax.persistence.criteria.Join join = ( javax.persistence.criteria.Join ) from.join(attributes, joinType);
return join;
}
};
/**
* Cria o join.
*
* @param from
* {@link From}
* @param joinType
* {@link JoinType}
* @param attribute
* {@link PluralAttribute}
* @return {@link Join}
*/
javax.persistence.criteria.Join join(From from, JoinType joinType, PluralAttribute, ?, ?> attribute);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy