Search in sources :

Example 66 with DataChannelDescriptor

use of org.apache.cayenne.configuration.DataChannelDescriptor in project cayenne by apache.

the class UpgradeHandler_V10Test method testModelUpgrade.

@Test
public void testModelUpgrade() throws Exception {
    DataChannelDescriptor descriptor = mock(DataChannelDescriptor.class);
    handler.processModel(descriptor);
    verifyZeroInteractions(descriptor);
}
Also used : DataChannelDescriptor(org.apache.cayenne.configuration.DataChannelDescriptor) Test(org.junit.Test)

Example 67 with DataChannelDescriptor

use of org.apache.cayenne.configuration.DataChannelDescriptor in project cayenne by apache.

the class UpgradeHandler_V7Test method testModelUpgrade.

@Test
public void testModelUpgrade() throws Exception {
    DataChannelDescriptor descriptor = mock(DataChannelDescriptor.class);
    DataMap map = new DataMap();
    when(descriptor.getDataMaps()).thenReturn(Collections.singletonList(map));
    ObjEntity superEntity = new ObjEntity("super");
    superEntity.addAttribute(new ObjAttribute("super"));
    superEntity.addAttribute(new ObjAttribute("simple"));
    map.addObjEntity(superEntity);
    ObjEntity subEntity = new ObjEntity("sub");
    subEntity.setSuperEntityName("super");
    subEntity.addAttribute(new ObjAttribute("super"));
    subEntity.addAttribute(new ObjAttribute("simple_sub"));
    map.addObjEntity(subEntity);
    assertNotNull(superEntity.getDeclaredAttribute("super"));
    assertNotNull(subEntity.getDeclaredAttribute("super"));
    handler.processModel(descriptor);
    assertNotNull(superEntity.getDeclaredAttribute("super"));
    assertNull(subEntity.getDeclaredAttribute("super"));
    verify(descriptor).getDataMaps();
    verifyNoMoreInteractions(descriptor);
}
Also used : DataChannelDescriptor(org.apache.cayenne.configuration.DataChannelDescriptor) ObjEntity(org.apache.cayenne.map.ObjEntity) ObjAttribute(org.apache.cayenne.map.ObjAttribute) DataMap(org.apache.cayenne.map.DataMap) Test(org.junit.Test)

Example 68 with DataChannelDescriptor

use of org.apache.cayenne.configuration.DataChannelDescriptor in project cayenne by apache.

the class UpgradeHandler_V8Test method testModelUpgrade.

@Test
public void testModelUpgrade() throws Exception {
    DataChannelDescriptor descriptor = mock(DataChannelDescriptor.class);
    handler.processModel(descriptor);
    verifyZeroInteractions(descriptor);
}
Also used : DataChannelDescriptor(org.apache.cayenne.configuration.DataChannelDescriptor) Test(org.junit.Test)

Example 69 with DataChannelDescriptor

use of org.apache.cayenne.configuration.DataChannelDescriptor in project cayenne by apache.

the class UpgradeHandler_V9Test method testModelUpgrade.

@Test
public void testModelUpgrade() throws Exception {
    DataChannelDescriptor descriptor = mock(DataChannelDescriptor.class);
    handler.processModel(descriptor);
    verifyZeroInteractions(descriptor);
}
Also used : DataChannelDescriptor(org.apache.cayenne.configuration.DataChannelDescriptor) Test(org.junit.Test)

Example 70 with DataChannelDescriptor

use of org.apache.cayenne.configuration.DataChannelDescriptor in project cayenne by apache.

the class BaseQueryValidator method validateName.

void validateName(QueryDescriptor query, ValidationResult validationResult) {
    final String name = query.getName();
    // Must have name
    if (Util.isEmptyString(name)) {
        addFailure(validationResult, query, "Unnamed " + query.getType());
        return;
    }
    DataMap map = query.getDataMap();
    if (map == null) {
        return;
    }
    // check for duplicate names in the parent context
    if (hasDuplicateQueryDescriptorInDataMap(query, map)) {
        addFailure(validationResult, query, "Duplicate query name: %s", name);
        return;
    }
    DataChannelDescriptor domain = query.getDataMap().getDataChannelDescriptor();
    if (domain == null) {
        return;
    }
    // check for duplicate names in sibling contexts
    for (DataMap nextMap : domain.getDataMaps()) {
        if (nextMap == map) {
            continue;
        }
        if (hasDuplicateQueryDescriptorInDataMap(query, nextMap)) {
            addFailure(validationResult, query, "Duplicate %s name in another DataMap: %s", query.getType(), name);
            return;
        }
    }
}
Also used : DataChannelDescriptor(org.apache.cayenne.configuration.DataChannelDescriptor) DataMap(org.apache.cayenne.map.DataMap)

Aggregations

DataChannelDescriptor (org.apache.cayenne.configuration.DataChannelDescriptor)100 DataMap (org.apache.cayenne.map.DataMap)50 DataNodeDescriptor (org.apache.cayenne.configuration.DataNodeDescriptor)28 Test (org.junit.Test)20 ObjEntity (org.apache.cayenne.map.ObjEntity)18 DbEntity (org.apache.cayenne.map.DbEntity)12 ProjectController (org.apache.cayenne.modeler.ProjectController)12 URL (java.net.URL)11 Embeddable (org.apache.cayenne.map.Embeddable)11 ArrayList (java.util.ArrayList)10 URLResource (org.apache.cayenne.resource.URLResource)10 ObjAttribute (org.apache.cayenne.map.ObjAttribute)8 QueryDescriptor (org.apache.cayenne.map.QueryDescriptor)8 EntityDisplayEvent (org.apache.cayenne.modeler.event.EntityDisplayEvent)8 DefaultMutableTreeNode (javax.swing.tree.DefaultMutableTreeNode)7 DataNodeEvent (org.apache.cayenne.configuration.event.DataNodeEvent)6 Injector (org.apache.cayenne.di.Injector)6 Procedure (org.apache.cayenne.map.Procedure)6 ProcedureDisplayEvent (org.apache.cayenne.modeler.event.ProcedureDisplayEvent)6 Resource (org.apache.cayenne.resource.Resource)6