/** * INTERNAL: */ public String getJavaClassName() { return m_descriptor.getJavaClassName(); }
public int compare(Object arg1, Object arg2) { return ((ClassDescriptor)arg1).getJavaClassName().compareTo(((ClassDescriptor)arg2).getJavaClassName()); } }
/** * PUBLIC: * Get the alias */ public String getAlias() { /* CR3310: Steven Vo * Default alias to the Java class name if the alias is not set */ if ((alias == null) && (getJavaClassName() != null)) { alias = oracle.toplink.essentials.internal.helper.Helper.getShortClassName(getJavaClassName()); } return alias; }
/** * Find a descriptor by name in the given project * used to avoid referring to descriptors by class. * This avoids having to construct a project by class facilitating weaving */ protected ClassDescriptor findDescriptor(Project project, String className){ Iterator iterator = project.getOrderedDescriptors().iterator(); while (iterator.hasNext()){ ClassDescriptor descriptor = (ClassDescriptor)iterator.next(); if (descriptor.getJavaClassName().equals(className)){ return descriptor; } } return null; }
/** * INTERNAL: * Search the given sessions list of ordered descriptors for a descriptor * for the class named the same as the given class. * * We do not use the session based getDescriptor() methods because they * require the project be initialized with classes. We are avoiding using * a project with loaded classes so the project can be constructed prior to * any class weaving. */ public static ClassDescriptor findDescriptor(Project project, Class cls) { for (ClassDescriptor descriptor : (Vector<ClassDescriptor>) project.getOrderedDescriptors()) { if (descriptor.getJavaClassName().equals(cls.getName())){ return descriptor; } } return null; }
/** * PUBLIC: * Returns a brief string representation of the receiver. */ public String toString() { return Helper.getShortClassName(getClass()) + "(" + getJavaClassName() + " --> " + getTables() + ")"; }
public EntityInformation[] locate(EntityManagerFactory entityManagerFactory, JpaGpsDevice device) throws JpaGpsDeviceException { CompassGpsInterfaceDevice gps = (CompassGpsInterfaceDevice) device.getGps(); EntityManager entityManager = (EntityManager) entityManagerFactory.createEntityManager(); Session session = entityManager.getServerSession(); entityManager.close(); ArrayList<EntityInformation> entitiesList = new ArrayList<EntityInformation>(); Map descriptors = session.getDescriptors(); for (Object o : descriptors.values()) { ClassDescriptor classDescriptor = (ClassDescriptor) o; String entityname = classDescriptor.getJavaClassName(); if (!gps.hasMappingForEntityForIndex((entityname))) { if (log.isDebugEnabled()) { log.debug("Entity [" + entityname + "] does not have compass mapping, filtering it out"); } continue; } if (shouldFilter(entityname, classDescriptor, device)) { continue; } Class<?> clazz = classDescriptor.getJavaClass(); ResourceMapping resourceMapping = gps.getMappingForEntityForIndex(entityname); EntityInformation entityInformation = new EntityInformation(clazz, classDescriptor.getAlias(), resourceMapping.getSubIndexHash().getSubIndexes()); entitiesList.add(entityInformation); if (log.isDebugEnabled()) { log.debug("Entity [" + entityname + "] will be indexed"); } } return entitiesList.toArray(new EntityInformation[entitiesList.size()]); }
((ObjectLevelReadQuery)query).setReferenceClassName(getDescriptor().getJavaClassName());
/** * Initialize and set the descriptor for the referenced class in this mapping. */ protected void initializeReferenceDescriptor(AbstractSession session) throws DescriptorException { if (getReferenceClass() == null) { throw DescriptorException.referenceClassNotSpecified(this); } ClassDescriptor refDescriptor = session.getDescriptor(getReferenceClass()); if (refDescriptor == null) { throw DescriptorException.descriptorIsMissing(getReferenceClass().getName(), this); } if (refDescriptor.isAggregateDescriptor() && (!isAggregateCollectionMapping())) { throw DescriptorException.referenceDescriptorCannotBeAggregate(this); } // can not be isolated if it is null. Seems that only aggregates do not set // the owning descriptor on the mapping. if ((!((this.getDescriptor() != null) && this.getDescriptor().isIsolated())) && refDescriptor.isIsolated()) { throw DescriptorException.isolateDescriptorReferencedBySharedDescriptor(refDescriptor.getJavaClassName(), this.getDescriptor().getJavaClassName(), this); } setReferenceDescriptor(refDescriptor); }
if (PrivilegedAccessHelper.shouldUsePrivilegedAccess()){ try { descriptorClass = (Class)AccessController.doPrivileged(new PrivilegedClassForName(getJavaClassName(), true, classLoader)); } catch (PrivilegedActionException exception) { throw ValidationException.classNotFoundWhileConvertingClassNames(getAmendmentClassName(), exception.getException()); descriptorClass = oracle.toplink.essentials.internal.security.PrivilegedAccessHelper.getClassForName(getJavaClassName(), true, classLoader);
/** * INTERNAL: * Process an entity. */ protected void processEntity() { // Don't override existing alias. if (m_descriptor.getAlias().equals("")) { String alias = getEntityName(); if (alias.equals("")) { alias = Helper.getShortClassName(getJavaClassName()); m_logger.logConfigMessage(m_logger.ALIAS, m_descriptor, alias); } // Verify that the alias is not a duplicate. ClassDescriptor existingDescriptor = getProject().getSession().getProject().getDescriptorForAlias(alias); if (existingDescriptor != null) { m_validator.throwNonUniqueEntityName(existingDescriptor.getJavaClassName(), m_descriptor.getJavaClassName(), alias); } // Set the alias on the descriptor and add it to the project. m_descriptor.setAlias(alias); getProject().getSession().getProject().addAlias(alias, m_descriptor.getClassDescriptor()); } }
this.readAllQuery.setReferenceClassName(getDescriptor().getJavaClassName()); try { readAllQuery.setReferenceClass(getDescriptor().getJavaClass());
this.readObjectQuery.setReferenceClassName(getDescriptor().getJavaClassName()); try { readObjectQuery.setReferenceClass(getDescriptor().getJavaClass());
throw QueryException.fetchGroupValidOnlyIfFetchGroupManagerInDescriptor(getDescriptor().getJavaClassName(), getName());