/** * Create a user mapping table and extension row if either does not exist. * When not created, there is no guarantee that an existing table has the * same schema as the provided tabled. * * @param userMappingTable * user mapping table * @return true if table was created, false if the table already existed */ public boolean createUserMappingTable(UserMappingTable userMappingTable) { boolean created = false; String userMappingTableName = userMappingTable.getTableName(); getOrCreate(userMappingTableName); if (!geoPackage.isTable(userMappingTableName)) { geoPackage.createUserTable(userMappingTable); created = true; } return created; }
extendedRelation .setRelatedPrimaryColumn(getPrimaryKeyColumnName(relatedTableName)); extendedRelation.setMappingTableName(userMappingTable.getTableName()); extendedRelation.setRelationName(relationName); try {
TestCase.assertFalse(rte.has(userMappingTable.getTableName())); TestCase.assertEquals(UserMappingTable.numRequiredColumns() + additionalColumns.size(), userMappingTable.getColumns() TestCase.assertFalse(relatedIdColumn.isPrimaryKey()); TestCase.assertFalse(rte.has(userMappingTable.getTableName())); ExtendedRelation extendedRelation = rte.addFeaturesRelationship( baseTableName, relatedTableName, userMappingTable); TestCase.assertTrue(rte.has()); TestCase.assertTrue(rte.has(userMappingTable.getTableName())); TestCase.assertNotNull(extendedRelation); extendedRelations = rte.getRelationships(); TestCase.assertFalse(rte.has(userMappingTable.getTableName())); extendedRelations = rte.getRelationships(); TestCase.assertEquals(0, extendedRelations.size());
UserMappingTable userMappingTable = UserMappingTable.create( mappingTableName, additionalMappingColumns); TestCase.assertFalse(rte.has(userMappingTable.getTableName())); TestCase.assertEquals(UserMappingTable.numRequiredColumns() + additionalMappingColumns.size(), userMappingTable TestCase.assertTrue(relatedIdColumn.isNotNull()); TestCase.assertFalse(relatedIdColumn.isPrimaryKey()); TestCase.assertFalse(rte.has(userMappingTable.getTableName())); validateContents(mediaTable, mediaTable.getContents()); TestCase.assertTrue(rte.has()); TestCase.assertTrue(rte.has(userMappingTable.getTableName())); TestCase.assertNotNull(extendedRelation); List<ExtendedRelation> extendedRelations = rte.getRelationships(); TestCase.assertFalse(rte.has(userMappingTable.getTableName())); extendedRelations = rte.getRelationships(); TestCase.assertEquals(0, extendedRelations.size());
UserMappingTable userMappingTable = UserMappingTable.create( mappingTableName, additionalMappingColumns); TestCase.assertFalse(rte.has(userMappingTable.getTableName())); TestCase.assertEquals(UserMappingTable.numRequiredColumns() + additionalMappingColumns.size(), userMappingTable TestCase.assertTrue(relatedIdColumn.isNotNull()); TestCase.assertFalse(relatedIdColumn.isPrimaryKey()); TestCase.assertFalse(rte.has(userMappingTable.getTableName())); validateContents(simpleTable, simpleTable.getContents()); TestCase.assertTrue(rte.has()); TestCase.assertTrue(rte.has(userMappingTable.getTableName())); TestCase.assertNotNull(extendedRelation); List<ExtendedRelation> extendedRelations = rte.getRelationships(); TestCase.assertFalse(rte.has(userMappingTable.getTableName())); extendedRelations = rte.getRelationships(); TestCase.assertEquals(0, extendedRelations.size());