/** * Get a User Mapping DAO from an extended relation * * @param extendedRelation extended relation * @return user mapping dao */ public UserMappingDao getMappingDao(ExtendedRelation extendedRelation) { return getMappingDao(extendedRelation.getMappingTableName()); }
/** * Get the related id mappings for the base id * * @param extendedRelation extended relation * @param baseId base id * @return IDs representing the matching related IDs */ public List<Long> getMappingsForBase(ExtendedRelation extendedRelation, long baseId) { return getMappingsForBase(extendedRelation.getMappingTableName(), baseId); }
/** * Get the base id mappings for the related id * * @param extendedRelation extended relation * @param relatedId related id * @return IDs representing the matching base IDs */ public List<Long> getMappingsForRelated(ExtendedRelation extendedRelation, long relatedId) { return getMappingsForRelated(extendedRelation.getMappingTableName(), relatedId); }
/** * Get a User Mapping DAO from a table name * * @param tableName mapping table name * @return user mapping dao */ public UserMappingDao getMappingDao(String tableName) { UserMappingDao userMappingDao = new UserMappingDao(getUserDao(tableName)); userMappingDao.registerCursorWrapper(getGeoPackage()); return userMappingDao; }
/** * Get a related media table DAO * * @param tableName * media table name * @return media DAO */ public MediaDao getMediaDao(String tableName) { MediaDao mediaDao = new MediaDao(getUserDao(tableName)); setContents(mediaDao.getTable()); return mediaDao; }
/** * Get a related media table DAO * * @param tableName media table name * @return media DAO */ public MediaDao getMediaDao(String tableName) { MediaDao mediaDao = new MediaDao(getUserDao(tableName)); mediaDao.registerCursorWrapper(getGeoPackage()); setContents(mediaDao.getTable()); return mediaDao; }
RelatedTablesExtension rte = new RelatedTablesExtension(geoPackage); if(rte.has()){ rte.removeExtension(); TestCase.assertFalse(rte.has()); TestCase.assertTrue(rte.getRelationships().isEmpty()); 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())); TestCase.assertFalse(contentsDao.getTables().contains( mediaTable.getTableName())); ExtendedRelation extendedRelation = rte.addMediaRelationship( baseTableName, mediaTable, userMappingTable); validateContents(mediaTable, mediaTable.getContents()); TestCase.assertTrue(rte.has()); TestCase.assertTrue(rte.has(userMappingTable.getTableName())); TestCase.assertNotNull(extendedRelation); List<ExtendedRelation> extendedRelations = rte.getRelationships(); TestCase.assertEquals(1, extendedRelations.size()); TestCase.assertTrue(geoPackage.getDatabase().tableExists(
RelatedTablesExtension rte = new RelatedTablesExtension(geoPackage); if(rte.has()){ rte.removeExtension(); TestCase.assertFalse(rte.has()); TestCase.assertTrue(rte.getRelationships().isEmpty()); 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())); simpleTable.getTableName())); ExtendedRelation extendedRelation = rte .addSimpleAttributesRelationship(baseTableName, simpleTable, userMappingTable); validateContents(simpleTable, simpleTable.getContents()); TestCase.assertTrue(rte.has()); TestCase.assertTrue(rte.has(userMappingTable.getTableName())); TestCase.assertNotNull(extendedRelation); List<ExtendedRelation> extendedRelations = rte.getRelationships(); TestCase.assertEquals(1, extendedRelations.size()); TestCase.assertTrue(geoPackage.getDatabase().tableExists(
RelatedTablesExtension rte = new RelatedTablesExtension(geoPackage); TestCase.assertTrue(rte.has()); List<ExtendedRelation> extendedRelations = rte.getRelationships(); TestCase.assertEquals(1, extendedRelations.size()); while (frs.moveToNext()) { long baseId = frs.getLong(pkColumn.getIndex()); List<Long> relatedIds = rte.getMappingsForBase( extendedRelation, baseId); TestCase.assertFalse(relatedIds.isEmpty()); while (ars.moveToNext()) { long relatedId = ars.getLong(pkColumn2.getIndex()); List<Long> baseIds = rte.getMappingsForRelated( extendedRelation, relatedId); TestCase.assertFalse(baseIds.isEmpty());
RelatedTablesExtension rte = new RelatedTablesExtension(geoPackage); if(rte.has()){ rte.removeExtension(); TestCase.assertFalse(rte.has()); List<ExtendedRelation> extendedRelations = rte.getRelationships(); TestCase.assertTrue(extendedRelations.isEmpty()); TestCase.assertFalse(rte.has(userMappingTable.getTableName())); TestCase.assertEquals(UserMappingTable.numRequiredColumns() + additionalColumns.size(), userMappingTable.getColumns() 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.assertEquals(1, extendedRelations.size()); TestCase.assertTrue(geoPackage.getDatabase().tableExists( UserMappingDao dao = rte.getMappingDao(mappingTableName); UserMappingRow userMappingRow = null; for (inx = 0; inx < 10; inx++) { rte.removeRelationship(extendedRelation);
private static void createRelatedTablesSimpleAttributesExtension(GeoPackage geoPackage) { RelatedTablesExtension relatedTables = new RelatedTablesExtension( geoPackage); + "_" + simpleTable.getTableName(), additionalMappingColumns); ExtendedRelation relation = relatedTables .addSimpleAttributesRelationship(tableName, simpleTable, userMappingTable); .getSimpleAttributesDao(simpleTable); List<Long> simpleAttributesIds = new ArrayList<>(); for (int i = 1; i <= 3; i++) { UserMappingDao userMappingDao = relatedTables.getMappingDao(relation); AttributesDao attributesDao = geoPackage.getAttributesDao(tableName);
String source) throws IOException { RelatedTablesExtension relatedTables = new RelatedTablesExtension( geoPackage); MediaDao mediaDao = relatedTables.getMediaDao(relation); UserMappingDao userMappingDao = relatedTables.getMappingDao(relation);
/** * Get a related simple attributes table DAO * * @param simpleAttributesTable simple attributes table * @return simple attributes DAO */ public SimpleAttributesDao getSimpleAttributesDao( SimpleAttributesTable simpleAttributesTable) { return getSimpleAttributesDao(simpleAttributesTable.getTableName()); }
/** * Get a related media table DAO * * @param extendedRelation * extended relation * @return media DAO */ public MediaDao getMediaDao(ExtendedRelation extendedRelation) { return getMediaDao(extendedRelation.getRelatedTableName()); }
private static void insertRelatedTablesFeaturesExtensionRows( GeoPackage geoPackage, ExtendedRelation relation) { RelatedTablesExtension relatedTables = new RelatedTablesExtension( geoPackage); UserMappingDao userMappingDao = relatedTables.getMappingDao(relation);
/** * Get a User Custom DAO from a table name * * @param tableName table name * @return user custom dao */ public UserCustomDao getUserDao(String tableName) { return UserCustomDao.readTable(getGeoPackage(), tableName); }
/** * Get a User Mapping DAO from a table name * * @param tableName * mapping table name * @return user mapping dao */ public UserMappingDao getMappingDao(String tableName) { return new UserMappingDao(getUserDao(tableName)); }
private static void createRelatedTablesFeaturesExtension( GeoPackage geoPackage, String tableName1, String tableName2) { RelatedTablesExtension relatedTables = new RelatedTablesExtension( geoPackage); List<UserCustomColumn> additionalMappingColumns = RelatedTablesUtils .createAdditionalUserColumns(UserMappingTable .numRequiredColumns()); UserMappingTable userMappingTable = UserMappingTable.create(tableName1 + "_" + tableName2, additionalMappingColumns); ExtendedRelation relation = relatedTables.addFeaturesRelationship( tableName1, tableName2, userMappingTable); insertRelatedTablesFeaturesExtensionRows(geoPackage, relation); }
private static void createRelatedTablesMediaExtension(Activity activity, Context testContext, GeoPackage geoPackage) throws IOException { RelatedTablesExtension relatedTables = new RelatedTablesExtension( geoPackage); List<UserCustomColumn> additionalMediaColumns = RelatedTablesUtils .createAdditionalUserColumns(MediaTable.numRequiredColumns()); MediaTable mediaTable = MediaTable.create("media", additionalMediaColumns); List<UserCustomColumn> additionalMappingColumns = RelatedTablesUtils .createAdditionalUserColumns(UserMappingTable .numRequiredColumns()); String tableName1 = "geometry1"; UserMappingTable userMappingTable1 = UserMappingTable.create(tableName1 + "_" + mediaTable.getTableName(), additionalMappingColumns); ExtendedRelation relation1 = relatedTables.addMediaRelationship( tableName1, mediaTable, userMappingTable1); insertRelatedTablesMediaExtensionRows(activity, testContext, geoPackage, relation1, "BIT Systems%", "BIT Systems", "BITSystems_Logo.png", "image/png", "BIT Systems Logo", "http://www.bit-sys.com"); String tableName2 = "geometry2"; UserMappingTable userMappingTable2 = UserMappingTable.create(tableName2 + "_" + mediaTable.getTableName(), additionalMappingColumns); ExtendedRelation relation2 = relatedTables.addMediaRelationship( tableName2, mediaTable, userMappingTable2); insertRelatedTablesMediaExtensionRows(activity, testContext, geoPackage, relation2, "NGA%", "NGA", "NGA_Logo.png", "image/png", "NGA Logo", "http://www.nga.mil"); insertRelatedTablesMediaExtensionRows(activity, testContext, geoPackage, relation2, "NGA", "NGA", "NGA.jpg", "image/jpeg", "Aerial View of NGA East", "http://www.nga.mil"); }
/** * Get a related simple attributes table DAO * * @param tableName simple attributes table name * @return simple attributes DAO */ public SimpleAttributesDao getSimpleAttributesDao(String tableName) { SimpleAttributesDao simpleAttributesDao = new SimpleAttributesDao( getUserDao(tableName)); simpleAttributesDao.registerCursorWrapper(getGeoPackage()); setContents(simpleAttributesDao.getTable()); return simpleAttributesDao; }