private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException { in.defaultReadObject(); this.oppositePropertyId = this.associationProperty.getOppositeProperty().getId(); } }
private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException { in.defaultReadObject(); this.oppositePropertyId = this.associationProperty.getOppositeProperty().getId(); } }
private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException { in.defaultReadObject(); this.oppositePropertyId = this.associationProperty.getOppositeProperty().getId(); } }
private void writeObject(ObjectOutputStream out) throws IOException { out.writeObject(((ObjectModelProvider)this.endpoint.getOwner()).objectModel()); out.writeInt(this.endpoint.getAssociationProperty().getId()); out.writeObject(this.endpoint.getBase(true)); }
private void writeObject(ObjectOutputStream out) throws IOException { out.writeObject(((ObjectModelProvider)this.endpoint.getOwner()).objectModel()); out.writeInt(this.endpoint.getAssociationProperty().getId()); out.writeObject(this.endpoint.getBase(true)); }
private void writeObject(ObjectOutputStream out) throws IOException { out.writeObject(((ObjectModelProvider)this.endpoint.getOwner()).objectModel()); out.writeInt(this.endpoint.getAssociationProperty().getId()); out.writeObject(this.endpoint.getBase(true)); }
private void writeObject(ObjectOutputStream out) throws IOException { out.writeObject(((ObjectModelProvider)this.endpoint.getOwner()).objectModel()); out.writeInt(this.endpoint.getAssociationProperty().getId()); out.writeObject(this.endpoint.getBase(true)); }
private void writeObject(ObjectOutputStream out) throws IOException { out.writeObject(((ObjectModelProvider)this.endpoint.getOwner()).objectModel()); out.writeInt(this.endpoint.getAssociationProperty().getId()); out.writeObject(this.endpoint.getBase(true)); }
@Override public boolean isInitialized(String field) { ModelProperty modelProperty = this.defaultObjectModel.getModelClass().getProperties().get(field); return this.defaultObjectModel.isLoaded(modelProperty.getId()); }
<T> FrozenComparator<T> getComparator(ComparatorPart ... parts);
public static <E> boolean isDisabled(E entity, Attribute<? super E, ?> attribute) { validateArgument("entity", entity); ModelClass modelClass = JPAModelClass.of(entity.getClass()); ObjectModel objectModel = ((ObjectModelProvider)entity).objectModel(); return objectModel.isDisabled(getModelProperty(modelClass, attribute).getId()); }
<T> FrozenEqualityComparator<T> getEqualityComparator(ComparatorPart ... parts);
public static void disableAll(Object entity) { validateArgument("entity", entity); ModelClass modelClass = JPAModelClass.of(entity.getClass()); if (modelClass.getType() != ModelType.REFERENCE) { throw new IllegalArgumentException( mustBeReferenceModel( "entity", ModelType.REFERENCE ) ); } ObjectModel objectModel = ((ObjectModelProvider)entity).objectModel(); for (ModelProperty modelProperty : modelClass.getProperties().values()) { objectModel.disable(modelProperty.getId()); } }
protected EqualityComparator<?> createDefaultEqualityComparator() { if (this.type == ModelType.REFERENCE) { return ReferenceEqualityComparator.getInstance(); } ComparatorPart[] parts = new ComparatorPart[this.propertyArray.length]; int propertyCount = 0; for (ModelProperty modelProperty : this.propertyArray) { if (!modelProperty.getTargetType().isArray()) { parts[propertyCount++] = new ComparatorPart(modelProperty.getId()); } } if (propertyCount == 0) { return ReferenceEqualityComparator.getInstance(); } if (propertyCount != parts.length) { ComparatorPart[] newParts = new ComparatorPart[propertyCount]; System.arraycopy(parts, 0, newParts, 0, propertyCount); parts = newParts; } return this.getEqualityComparator(parts); }
@SuppressWarnings("unchecked") public static <E, A> XOrderedSet<A> extractAttribute(Collection<E> entities, SingularAttribute<? super E, A> attribute) { XOrderedSet<A> values; if (entities.size() < 1024) { values = new LinkedHashSet<>((entities.size() * 4 + 2) / 3); } else { values = new LinkedHashSet<>(); } for (E entity : entities) { validateArgument("entity", entity); ModelClass modelClass = JPAModelClass.of(entity.getClass()); ObjectModel objectModel = ((ObjectModelProvider)entity).objectModel(); ModelProperty modelProperty = getModelProperty(modelClass, attribute); if (modelProperty.getAssociationType() == AssociationType.NONE) { values.add((A)objectModel.get(modelProperty.getId())); } else { Reference<?> reference = (Reference<?>)objectModel.getAssociatedEndpoint(modelProperty.getId()); values.add((A)reference.get()); } } return values; }
private void parepareLoadScalars(Object entity, EntityPersister entityPersister, Set<String> propertyNames) { FieldInterceptor fieldInterceptor = FieldInterceptionHelper.extractFieldInterceptor(entity); if (fieldInterceptor instanceof HibernateScalarLoader) { HibernateScalarLoader hibernateObjectModelScalarLoader = (HibernateScalarLoader)fieldInterceptor; ObjectModel objectModel = hibernateObjectModelScalarLoader.getObjectModel(); ModelClass modelClass = objectModel.getModelClass(); int[] scalarPropertyIds = new int[propertyNames.size()]; int index = 0; for (String propertyName : propertyNames) { scalarPropertyIds[index++] = modelClass.getProperties().get(propertyName).getId(); } this.scalarBatchLoadingExecutor.prepareLoad(objectModel, scalarPropertyIds); } else { throw new IllegalProgramException( scalarFetchCanOnlyBeAppliedOnJAPObjectModel( entityPersister.getEntityName() ) ); } }
public AssociatedNavigableSet(ObjectModel objectModel, int propertyId) { super(null); Arguments.mustNotBeNull("objectModel", objectModel); this.owner = objectModel.getOwner(); ModelProperty property = objectModel.getModelClass().getProperty(propertyId); if (property.getAssociationType() != AssociationType.COLLECTION || !SortedSet.class.isAssignableFrom(property.getStandardCollectionType())) { throw new IllegalArgumentException( CommonMessages.createFailedBecausePropertyMustBe( this.getClass(), property, SortedSet.class ) ); } this.associationProperty = property; if (property.getOppositeProperty() != null) { this.oppositePropertyId = property.getOppositeProperty().getId(); } else { this.oppositePropertyId = -1; } }
public AssociatedNavigableMap(ObjectModel objectModel, int propertyId) { super(null); Arguments.mustNotBeNull("objectModel", objectModel); this.owner = objectModel.getOwner(); ModelProperty property = objectModel.getModelClass().getProperty(propertyId); if (property.getAssociationType() != AssociationType.MAP || !SortedMap.class.isAssignableFrom(property.getStandardCollectionType())) { throw new IllegalArgumentException( CommonMessages.createFailedBecausePropertyMustBe( this.getClass(), property, SortedMap.class ) ); } this.associationProperty = property; if (property.getOppositeProperty() != null) { this.oppositePropertyId = property.getOppositeProperty().getId(); } else { this.oppositePropertyId = -1; } }
@SuppressWarnings("unchecked") public HibernateScalarLoader(ObjectModel objectModel, FieldHandler handler) { Arguments.mustNotBeNull("objectModel", objectModel); Arguments.mustBeInstanceOfValue("handler", handler, AbstractFieldInterceptor.class); this.defaultObjectModel = objectModel; AbstractFieldInterceptor abstractFieldInterceptor = (AbstractFieldInterceptor)handler; this.session = abstractFieldInterceptor.getSession(); Set<String> uninitializedFields = abstractFieldInterceptor.getUninitializedFields(); if (!Nulls.isNullOrEmpty(uninitializedFields)) { Map<String, ModelProperty> properties = this.defaultObjectModel.getModelClass().getProperties(); for (String uninitializedField : uninitializedFields) { this.defaultObjectModel.unload(properties.get(uninitializedField).getId()); } } }
private int getInitializationState() { int initializationState = 0; ObjectModel objectModel = this.defaultObjectModel; for (ModelProperty modelProperty : this.defaultObjectModel.getModelClass().getPropertyList()) { if (modelProperty.getPropertyType() == PropertyType.SCALAR && modelProperty.isDeferrable()) { int propertyId = modelProperty.getId(); if (objectModel.isDisabled(propertyId) || objectModel.isUnloaded(propertyId)) { initializationState |= STATE_UNINITIALIZIED; } else { initializationState |= STATE_INITIALIZIED; } if ((initializationState & (STATE_UNINITIALIZIED | STATE_INITIALIZIED)) == (STATE_UNINITIALIZIED | STATE_INITIALIZIED)) { break; } } } return initializationState; }