use of org.eclipse.jpt.jpa.core.context.persistence.MappingFileRef in project jbosstools-hibernate by jbosstools.
the class HibernateJpaOrmModelTests method testNamigStrategyMapping.
@Test
public void testNamigStrategyMapping() {
ConsoleConfiguration cc = KnownConfigurations.getInstance().find(PROJECT_NAME);
assertNotNull("Console configuration not found for project " + PROJECT_NAME, cc);
cc.build();
assertNotNull("Console configuration build problem", cc.getConfiguration());
assertNotNull("Naming Strategy not found", cc.getConfiguration().getNamingStrategy());
assertEquals("ns.NamingStrategy", cc.getConfiguration().getNamingStrategy().getStrategyClassName());
try {
jpaProject = ((Reference) project.getAdapter(Reference.class)).getValue();
} catch (InterruptedException e) {
fail(e.getMessage());
}
assertNotNull(jpaProject);
JpaContextRoot rootContextNode = jpaProject.getContextRoot();
Persistence p = rootContextNode.getPersistenceXml().getRoot();
assertTrue(p.getPersistenceUnits().iterator().hasNext());
assertTrue(p.getPersistenceUnits().iterator().next() instanceof HibernatePersistenceUnit);
HibernatePersistenceUnit hpu = (HibernatePersistenceUnit) p.getPersistenceUnits().iterator().next();
List<MappingFileRef> mfrs = IterableTools.list(hpu.getMappingFileRefs());
assertTrue(mfrs.size() == 1);
assertTrue(mfrs.get(0).getMappingFile() instanceof GenericOrmXml);
GenericOrmXml orm = (GenericOrmXml) mfrs.get(0).getMappingFile();
checkManyToMany1NS(orm.getRoot().getPersistentType("entity.ManyToMany1"));
checkManyToMany2NS(orm.getRoot().getPersistentType("entity.ManyToMany2"));
cc.reset();
}
use of org.eclipse.jpt.jpa.core.context.persistence.MappingFileRef in project jbosstools-hibernate by jbosstools.
the class HibernateJpaOrmModelTests method testDefaultMapping.
@Test
public void testDefaultMapping() {
assertNotNull(jpaProject);
JpaContextRoot rootContextNode = jpaProject.getContextRoot();
Persistence p = rootContextNode.getPersistenceXml().getRoot();
assertTrue(p.getPersistenceUnits().iterator().hasNext());
assertTrue(p.getPersistenceUnits().iterator().next() instanceof HibernatePersistenceUnit);
HibernatePersistenceUnit hpu = (HibernatePersistenceUnit) p.getPersistenceUnits().iterator().next();
List<MappingFileRef> mfrs = IterableTools.list(hpu.getMappingFileRefs());
assertTrue(mfrs.size() == 1);
assertTrue(mfrs.get(0).getMappingFile() instanceof GenericOrmXml);
GenericOrmXml orm = (GenericOrmXml) mfrs.get(0).getMappingFile();
List<OrmPersistentType> pTypes = IterableTools.list(orm.getRoot().getPersistentTypes());
assertTrue(pTypes.size() == 3);
checkManyToMany1(orm.getRoot().getPersistentType("entity.ManyToMany1"));
checkManyToMany2(orm.getRoot().getPersistentType("entity.ManyToMany2"));
}
use of org.eclipse.jpt.jpa.core.context.persistence.MappingFileRef in project jbosstools-hibernate by jbosstools.
the class AddGeneratedClassesJob method mappingFileContains.
boolean mappingFileContains(JpaProject jpaProject, String fullyQualifiedTypeName) {
PersistenceXml persistenceXml = jpaProject.getContextRoot().getPersistenceXml();
if (persistenceXml == null) {
return false;
}
Persistence persistence = persistenceXml.getRoot();
if (persistence == null) {
return false;
}
if (persistence.getPersistenceUnitsSize() == 0) {
return false;
}
PersistenceUnit persistenceUnit = persistence.getPersistenceUnit(0);
for (MappingFileRef mappingFileRef : persistenceUnit.getMappingFileRefs()) {
if (mappingFileRef.getPersistentType(fullyQualifiedTypeName) != null) {
return true;
}
}
return false;
}
use of org.eclipse.jpt.jpa.core.context.persistence.MappingFileRef in project jbosstools-hibernate by jbosstools.
the class HibernateClassRef method validate.
/* (non-Javadoc)
* @see org.eclipse.jpt.jpa.core.internal.jpa1.context.persistence.GenericClassRef#validate(java.util.List, org.eclipse.wst.validation.internal.provisional.core.IReporter)
*/
@Override
public void validate(List<IMessage> messages, IReporter reporter) {
if (reporter.isCancelled()) {
throw new ValidationCancelledException();
}
if (StringTools.isBlank(this.className)) {
messages.add(buildValidationMessage(JptJpaCoreValidationMessages.PERSISTENCE_UNIT_UNSPECIFIED_CLASS, this.getValidationTextRange()));
return;
}
if (this.getJavaPersistentType() == null && this.javaPackageInfo == null) {
messages.add(buildValidationMessage(JptJpaCoreValidationMessages.PERSISTENCE_UNIT_NONEXISTENT_CLASS, new String[] { this.getJavaClassName() }, this.getValidationTextRange()));
return;
}
if (this.getJavaPersistentType() != null) {
// 190062 validate Java class only if this is the only reference to it
// i.e. the persistence.xml ref is the only ref - none of the mapping
// files reference the same class
boolean validateJavaPersistentType = true;
for (MappingFileRef mappingFileRef : this.getPersistenceUnit().getMappingFileRefsContaining(this.getJavaClassName())) {
validateJavaPersistentType = false;
messages.add(buildValidationMessage(JptJpaCoreValidationMessages.PERSISTENCE_UNIT_REDUNDANT_CLASS, new String[] { this.getJavaClassName(), mappingFileRef.getFileName() }, this.getValidationTextRange()));
}
if (validateJavaPersistentType) {
this.validateJavaManagedType(messages, reporter);
}
} else {
validatePackageInfo(messages, reporter);
}
}
Aggregations