/** * {@inheritDoc} */ public Set<Query> createPKQueriesForClass(InterMineObject obj, Source source, boolean queryNulls, ClassDescriptor cld) throws MetaDataException { Set<PrimaryKey> primaryKeys; if (source == null) { primaryKeys = new LinkedHashSet<PrimaryKey>(PrimaryKeyUtil.getPrimaryKeys(cld) .values()); } else { primaryKeys = DataLoaderHelper.getPrimaryKeys(cld, source, lookupOs); } LOG.debug("primary keys for class " + cld.getName() + " = " + primaryKeys); Set<Query> returnSet = new LinkedHashSet<Query>(); int pkCount = primaryKeys.size(); for (PrimaryKey pk : primaryKeys) { try { createPKQueryForPK(obj, queryNulls, cld, pk, source, returnSet); } catch (IllegalArgumentException e) { pkCount--; } } if (primaryKeys.isEmpty() || (pkCount > 0)) { // This set may be empty return returnSet; } else { // All PK queries were invalid return null; } }
/** * {@inheritDoc} */ public Set<Query> createPKQueriesForClass(InterMineObject obj, Source source, boolean queryNulls, ClassDescriptor cld) throws MetaDataException { Set<PrimaryKey> primaryKeys; if (source == null) { primaryKeys = new LinkedHashSet<PrimaryKey>(PrimaryKeyUtil.getPrimaryKeys(cld) .values()); } else { primaryKeys = DataLoaderHelper.getPrimaryKeys(cld, source, lookupOs); } LOG.debug("primary keys for class " + cld.getName() + " = " + primaryKeys); Set<Query> returnSet = new LinkedHashSet<Query>(); int pkCount = primaryKeys.size(); for (PrimaryKey pk : primaryKeys) { try { createPKQueryForPK(obj, queryNulls, cld, pk, source, returnSet); } catch (IllegalArgumentException e) { pkCount--; } } if (primaryKeys.isEmpty() || (pkCount > 0)) { // This set may be empty return returnSet; } else { // All PK queries were invalid return null; } }
for (ClassDescriptor cld : classDescriptors) { if (source == null) { if (!PrimaryKeyUtil.getPrimaryKeys(cld).isEmpty()) { noKeys = false;
for (ClassDescriptor cld : classDescriptors) { if (source == null) { if (!PrimaryKeyUtil.getPrimaryKeys(cld).isEmpty()) { noKeys = false;
Map<String, PrimaryKey> keysForCls = PrimaryKeyUtil.getPrimaryKeys(cld); String[] tokens = keyList.split(","); for (int i = 0; i < tokens.length; i++) {
Set<PrimaryKey> keysForClass; if (source == null) { keysForClass = new HashSet<PrimaryKey>(PrimaryKeyUtil.getPrimaryKeys(cld) .values()); } else {
Map<String, PrimaryKey> keysForCls = PrimaryKeyUtil.getPrimaryKeys(cld); String[] tokens = keyList.split(","); for (int i = 0; i < tokens.length; i++) {
public void testGetPrimaryKeysCldInherited() { ClassDescriptor cld = model.getClassDescriptorByName("org.intermine.model.basicmodel.Manager"); assertEquals(expected, PrimaryKeyUtil.getPrimaryKeys(cld)); }
Map<String, IndexStatement> statements) { Map<String, PrimaryKey> primaryKeys = PrimaryKeyUtil.getPrimaryKeys(cld); String tableName = DatabaseUtil.getTableName(cld).toLowerCase(); if (!schema.getMissingTables().contains(tableName)) {
Map<String, IndexStatement> statements) { Map<String, PrimaryKey> primaryKeys = PrimaryKeyUtil.getPrimaryKeys(cld); String tableName = DatabaseUtil.getTableName(cld).toLowerCase(); if (!schema.getMissingTables().contains(tableName)) {
public void testGetPrimaryKeysCld() { ClassDescriptor cld = model.getClassDescriptorByName("org.intermine.model.basicmodel.Employee"); expected.put("key1", new PrimaryKey("key1", "name, age", cld)); expected.put("key2", new PrimaryKey("key2", "name, fullTime", cld)); assertEquals(expected, PrimaryKeyUtil.getPrimaryKeys(cld)); }
public void testObjectPrimaryKeyIsNull1() throws Exception { Source source = new Source("testsource"); Employable e = (Employable) DynamicUtil.createObject(Collections.singleton(Employable.class)); e.setName("jkhsdfg"); ClassDescriptor cld = model.getClassDescriptorByName("org.intermine.model.testmodel.Employable"); Set primaryKeys = new HashSet(PrimaryKeyUtil.getPrimaryKeys(cld).values()); PrimaryKey pk = (PrimaryKey) primaryKeys.iterator().next(); assertTrue(DataLoaderHelper.objectPrimaryKeyNotNull(model, e, cld, pk, source, new IntToIntMap())); }
public void testObjectPrimaryKeyIsNullNullField() throws Exception { Source source = new Source("testsource"); Employable e = (Employable) DynamicUtil.createObject(Collections.singleton(Employable.class)); e.setName(null); ClassDescriptor cld = model.getClassDescriptorByName("org.intermine.model.testmodel.Employable"); Set primaryKeys = new HashSet(PrimaryKeyUtil.getPrimaryKeys(cld).values()); PrimaryKey pk = (PrimaryKey) primaryKeys.iterator().next(); assertFalse(DataLoaderHelper.objectPrimaryKeyNotNull(model, e, cld, pk, source, new IntToIntMap())); }
for (Map.Entry<String, PrimaryKey> entry : PrimaryKeyUtil.getPrimaryKeys(cld).entrySet()) { String keyName = entry.getKey(); PrimaryKey key = entry.getValue();
for (Map.Entry<String, PrimaryKey> entry : PrimaryKeyUtil.getPrimaryKeys(cld).entrySet()) { String keyName = entry.getKey(); PrimaryKey key = entry.getValue();
public void testObjectPrimaryKeyIsNull2() throws Exception { Source source = new Source("testsource"); Company c = (Company) DynamicUtil.createObject(Collections.singleton(Company.class)); c.setName("jkhsdfg"); Address a = new Address(); a.setAddress("10 Downing Street"); c.setAddress(a); c.setVatNumber(765213); ClassDescriptor cld = model.getClassDescriptorByName("org.intermine.model.testmodel.Company"); Set primaryKeys = new HashSet(PrimaryKeyUtil.getPrimaryKeys(cld).values()); PrimaryKey pk = (PrimaryKey) primaryKeys.iterator().next(); assertTrue(DataLoaderHelper.objectPrimaryKeyNotNull(model, c, cld, pk, source, new IntToIntMap())); }
public void testObjectPrimaryKeyIsNullNullField3() throws Exception { Department d = (Department) DynamicUtil.createObject(Collections.singleton(Department.class)); d.setName("jkhsdfg"); Company c = (Company) DynamicUtil.createObject(Collections.singleton(Company.class)); c.setAddress(null); c.setVatNumber(765213); d.setCompany(c); ClassDescriptor cld = model.getClassDescriptorByName("org.intermine.model.testmodel.Department"); PrimaryKey pk = (PrimaryKey) PrimaryKeyUtil.getPrimaryKeys(cld).get("key1"); assertTrue(DataLoaderHelper.objectPrimaryKeyNotNull(model, d, cld, pk, null, new IntToIntMap())); }
.getPrimaryKeys(refCld).values()); } else { primaryKeys = DataLoaderHelper.getPrimaryKeys(refCld, source, null);
.getPrimaryKeys(refCld).values()); } else { primaryKeys = DataLoaderHelper.getPrimaryKeys(refCld, source, null);
public void testObjectPrimaryKeyIsNullNullField2() throws Exception { Source source = new Source("testsource"); Company c = (Company) DynamicUtil.createObject(Collections.singleton(Company.class)); c.setName("jkhsdfg"); Address a = new Address(); a.setAddress(null); c.setAddress(a); c.setVatNumber(765213); ClassDescriptor cld = model.getClassDescriptorByName("org.intermine.model.testmodel.Company"); Set<PrimaryKey> primaryKeys = new HashSet<PrimaryKey>(PrimaryKeyUtil.getPrimaryKeys(cld).values()); for (PrimaryKey pk: primaryKeys) { boolean isPrimaryKey = DataLoaderHelper.objectPrimaryKeyNotNull(model, c, cld, pk, source, new IntToIntMap()); if ("key1".equals(pk.getName())) { // Company.key1=name, address assertFalse(isPrimaryKey); } else { if ("key2".equals(pk.getName())) { // Company.key2=vatNumber assertTrue(isPrimaryKey); } else { fail("unknown primary key: " + pk); } } } }