public ToOne addToOneWithoutProperty(String name, Entity target, String fkColumnName, boolean notNull, boolean unique) { PropertyBuilder propertyBuilder = new PropertyBuilder(schema, this, null, name); if (notNull) { propertyBuilder.notNull(); } if (unique) { propertyBuilder.unique(); } propertyBuilder.dbName(fkColumnName); Property column = propertyBuilder.getProperty(); Property[] fkColumns = {column}; ToOne toOne = new ToOne(schema, this, target, fkColumns, false); toOne.setName(name); toOneRelations.add(toOne); return toOne; }
@Test public void testMinimalSchema() throws Exception { Schema schema = new Schema(1, "org.greenrobot.testdao"); Entity addressEntity = schema.addEntity("Addresse"); Property idProperty = addressEntity.addIdProperty().getProperty(); addressEntity.addIntProperty("count").index(); addressEntity.addIntProperty("dummy").notNull(); assertEquals(1, schema.getEntities().size()); assertEquals(3, addressEntity.getProperties().size()); File outputDir = new File("build/test-out"); outputDir.mkdirs(); File daoFile = new File(outputDir, "org/greenrobot/testdao/" + addressEntity.getClassName() + "Dao.java"); daoFile.delete(); assertFalse(daoFile.exists()); new DaoGenerator().generateAll(schema, outputDir.getPath()); assertEquals("PRIMARY KEY", idProperty.getConstraints()); assertTrue(daoFile.toString(), daoFile.exists()); }
public static void main(String[] args) throws Exception{ Schema schema = new Schema(1, "com.codingbingo.fastreader.dao"); Entity book = schema.addEntity("Book"); book.addIdProperty().primaryKey().autoincrement(); book.addStringProperty("bookName").notNull(); book.addStringProperty("bookImagePath"); book.addStringProperty("description"); book.addStringProperty("tags"); book.addStringProperty("writer"); book.addStringProperty("charSet"); book.addStringProperty("bookPath"); book.addIntProperty("currentChapter"); book.addIntProperty("currentPosition"); book.addIntProperty("processStatus").notNull(); Entity chapter = schema.addEntity("Chapter"); chapter.addIdProperty().primaryKey().autoincrement(); chapter.addStringProperty("title"); chapter.addIntProperty("position").notNull(); chapter.addIntProperty("pageCount"); chapter.addBooleanProperty("isRead"); Property bookIdProperty = chapter.addLongProperty("bookId").notNull().getProperty(); chapter.addToOne(book, bookIdProperty); new DaoGenerator().generateAll(schema, "/Users/bingo/Git/FastReader/app/src/main/java"); }
protected void createSimple(String name, boolean indexed) { Entity notNull = schema.addEntity(name); notNull.addIdProperty().notNull(); notNull.addBooleanProperty("simpleBoolean").notNull(); notNull.addByteProperty("simpleByte").notNull(); notNull.addShortProperty("simpleShort").notNull(); notNull.addIntProperty("simpleInt").notNull(); notNull.addLongProperty("simpleLong").notNull(); notNull.addFloatProperty("simpleFloat").notNull(); notNull.addDoubleProperty("simpleDouble").notNull(); PropertyBuilder simpleString = notNull.addStringProperty("simpleString"); if(indexed) { simpleString.index(); } notNull.addByteArrayProperty("simpleByteArray"); }
private static void addTraceRepo(Schema schema){ Entity entity = schema.addEntity("TraceRepo"); entity.addLongProperty("id").primaryKey().notNull(); entity.addStringProperty("name").notNull(); entity.addStringProperty("description"); entity.addStringProperty("language"); entity.addIntProperty("stargazersCount"); entity.addIntProperty("watchersCount"); entity.addIntProperty("forksCount"); entity.addBooleanProperty("fork"); entity.addStringProperty("ownerLogin"); entity.addStringProperty("ownerAvatarUrl"); entity.addDateProperty("startTime"); entity.addDateProperty("latestTime"); entity.addIntProperty("traceNum"); }
private static void addTest3(Schema schema) { Entity testData = schema.addEntity("TestData3"); testData.addIdProperty().primaryKey().autoincrement(); testData.addStringProperty("testString"); testData.addLongProperty("testLong"); testData.addDateProperty("testDate"); testData.addIntProperty("testInt"); testData.addBooleanProperty("testBoolean"); } }
/** * add auth user * @param schema */ private static void addAuthUser(Schema schema){ Entity entity = schema.addEntity("AuthUser"); entity.addStringProperty("accessToken").primaryKey().notNull(); entity.addDateProperty("authTime").notNull(); entity.addIntProperty("expireIn").notNull(); entity.addStringProperty("scope").notNull(); entity.addBooleanProperty("selected").notNull(); entity.addStringProperty("loginId").notNull(); entity.addStringProperty("name"); entity.addStringProperty("avatar"); }
private static void addTest(Schema schema) { Entity testData = schema.addEntity("TestData"); testData.addIdProperty().primaryKey().autoincrement(); testData.addStringProperty("testString"); testData.addLongProperty("testLong"); testData.addDateProperty("testDate"); testData.addIntProperty("testInt"); testData.addBooleanProperty("testBoolean"); } private static void addTest2(Schema schema) {
private static void addBookMarkRepo(Schema schema){ Entity entity = schema.addEntity("BookMarkRepo"); entity.addLongProperty("id").primaryKey().notNull(); entity.addStringProperty("name").notNull(); entity.addStringProperty("description"); entity.addStringProperty("language"); entity.addIntProperty("stargazersCount"); entity.addIntProperty("watchersCount"); entity.addIntProperty("forksCount"); entity.addBooleanProperty("fork"); entity.addStringProperty("ownerLogin"); entity.addStringProperty("ownerAvatarUrl"); entity.addDateProperty("markTime"); }
protected void createToMany() { Entity toManyTargetEntity = schema.addEntity("ToManyTargetEntity"); Property toManyIdProperty = toManyTargetEntity.addLongProperty("toManyId").getProperty(); Property toManyIdDescProperty = toManyTargetEntity.addLongProperty("toManyIdDesc").getProperty(); Property targetIdProperty = toManyTargetEntity.addIdProperty().getProperty(); Property targetJoinProperty = toManyTargetEntity.addStringProperty("targetJoinProperty").getProperty(); Entity toManyEntity = schema.addEntity("ToManyEntity"); Property sourceIdProperty = toManyEntity.addIdProperty().getProperty(); Property sourceJoinProperty = toManyEntity.addStringProperty("sourceJoinProperty").getProperty(); ToMany toMany = toManyEntity.addToMany(toManyTargetEntity, toManyIdProperty); toMany.orderAsc(targetIdProperty); ToMany toManyDesc = toManyEntity.addToMany(toManyTargetEntity, toManyIdDescProperty); toManyDesc.setName("toManyDescList"); toManyDesc.orderDesc(targetIdProperty); ToMany toManyByJoinProperty = toManyEntity .addToMany(sourceJoinProperty, toManyTargetEntity, targetJoinProperty); toManyByJoinProperty.setName("toManyByJoinProperty"); toManyByJoinProperty.orderAsc(targetIdProperty); Property[] sourceProperties = {sourceIdProperty, sourceJoinProperty}; Property[] targetProperties = {toManyIdProperty, targetJoinProperty}; ToMany toManyJoinTwo = toManyEntity.addToMany(sourceProperties, toManyTargetEntity, targetProperties); toManyJoinTwo.setName("toManyJoinTwo"); toManyJoinTwo.orderDesc(targetJoinProperty); toManyJoinTwo.orderDesc(targetIdProperty); Entity toManyJoinEntity = schema.addEntity("JoinManyToDateEntity"); toManyJoinEntity.addIdProperty(); Property id1 = toManyJoinEntity.addLongProperty("idToMany").getProperty(); Property id2 = toManyJoinEntity.addLongProperty("idDate").getProperty(); toManyEntity.addToMany(dateEntity, toManyJoinEntity, id1, id2); }
private static void addTest2(Schema schema) { Entity testData = schema.addEntity("TestData2"); testData.addIdProperty().primaryKey().autoincrement(); testData.addStringProperty("testString"); testData.addLongProperty("testLong"); testData.addDateProperty("testDate"); testData.addIntProperty("testInt"); testData.addBooleanProperty("testBoolean"); } private static void addTest3(Schema schema) {
private static void addMyTrendingLanguage(Schema schema){ Entity entity = schema.addEntity("MyTrendingLanguage"); entity.addStringProperty("slug").primaryKey().notNull(); entity.addStringProperty("name").notNull(); entity.addIntProperty("order").notNull(); }
private static void addLocalUser(Schema schema){ Entity entity = schema.addEntity("LocalUser"); entity.addStringProperty("login").primaryKey().notNull(); entity.addStringProperty("name"); entity.addStringProperty("avatarUrl"); entity.addIntProperty("followers"); entity.addIntProperty("following"); }
private static void addBookMarkUser(Schema schema){ Entity entity = schema.addEntity("BookMarkUser"); entity.addStringProperty("login").primaryKey().notNull(); entity.addStringProperty("name"); entity.addStringProperty("avatarUrl"); entity.addIntProperty("followers"); entity.addIntProperty("following"); entity.addDateProperty("markTime"); }
private static void addLocalRepo(Schema schema){ Entity entity = schema.addEntity("LocalRepo"); entity.addLongProperty("id").primaryKey().notNull(); entity.addStringProperty("name").notNull(); entity.addStringProperty("description"); entity.addStringProperty("language"); entity.addIntProperty("stargazersCount"); entity.addIntProperty("watchersCount"); entity.addIntProperty("forksCount"); entity.addBooleanProperty("fork"); entity.addStringProperty("ownerLogin"); entity.addStringProperty("ownerAvatarUrl"); }
private Schema createSchema2() { Schema schema2 = new Schema(1, "org.greenrobot.greendao.daotest2"); schema2.setDefaultJavaPackageTest("org.greenrobot.greendao.daotest2.entity"); schema2.setDefaultJavaPackageDao("org.greenrobot.greendao.daotest2.dao"); schema2.enableKeepSectionsByDefault(); Entity keepEntity = schema2.addEntity("KeepEntity"); keepEntity.addIdProperty(); Entity toManyTarget2 = schema2.addEntity("ToManyTarget2"); toManyTarget2.addIdProperty(); Property toManyTarget2FkId = toManyTarget2.addLongProperty("fkId").getProperty(); toManyTarget2.setSkipGenerationTest(true); Entity toOneTarget2 = schema2.addEntity("ToOneTarget2"); toOneTarget2.addIdProperty(); toOneTarget2.setJavaPackage("org.greenrobot.greendao.daotest2.to1_specialentity"); toOneTarget2.setJavaPackageDao("org.greenrobot.greendao.daotest2.to1_specialdao"); toOneTarget2.setJavaPackageTest("org.greenrobot.greendao.daotest2.to1_specialtest"); toOneTarget2.setSkipGenerationTest(true); Entity relationSource2 = schema2.addEntity("RelationSource2"); relationSource2.addIdProperty(); relationSource2.addToMany(toManyTarget2, toManyTarget2FkId); Property toOneId = relationSource2.addLongProperty("toOneId").getProperty(); relationSource2.addToOne(toOneTarget2, toOneId); relationSource2.setJavaPackage("org.greenrobot.greendao.daotest2.specialentity"); relationSource2.setJavaPackageDao("org.greenrobot.greendao.daotest2.specialdao"); relationSource2.setJavaPackageTest("org.greenrobot.greendao.daotest2.specialtest"); relationSource2.setSkipGenerationTest(true); return schema2; }
private static void addBookmark(Schema schema){ Entity entity = schema.addEntity("Bookmark"); entity.addStringProperty("id").primaryKey().notNull(); entity.addStringProperty("type").notNull(); entity.addStringProperty("userId"); entity.addLongProperty("repoId"); entity.addDateProperty("markTime"); }
private static void addTraceUser(Schema schema){ Entity entity = schema.addEntity("TraceUser"); entity.addStringProperty("login").primaryKey().notNull(); entity.addStringProperty("name"); entity.addStringProperty("avatarUrl"); entity.addIntProperty("followers"); entity.addIntProperty("following"); entity.addDateProperty("startTime"); entity.addDateProperty("latestTime"); entity.addIntProperty("traceNum"); }
private static void addTrace(Schema schema){ Entity entity = schema.addEntity("Trace"); entity.addStringProperty("id").primaryKey().notNull(); entity.addStringProperty("type"); entity.addStringProperty("userId"); entity.addLongProperty("repoId"); entity.addDateProperty("startTime"); entity.addDateProperty("latestTime"); entity.addIntProperty("traceNum"); }
protected Entity createTest() { Entity testEntity = schema.addEntity("TestEntity"); testEntity.setJavaDoc("This entity is used by internal tests of greenDAO.\n" + "(This JavaDoc is defined in the generator project.)"); testEntity.setCodeBeforeClass("// This is another test comment, you could also apply annotations like this"); testEntity.addIdProperty().javaDocField("JavaDoc test field"); testEntity.addIntProperty("simpleInt").notNull().javaDocGetter("JavaDoc test getter"); testEntity.addIntProperty("simpleInteger").javaDocSetter("JavaDoc test setter"); testEntity.addStringProperty("simpleStringNotNull").notNull().javaDocGetterAndSetter("JavaDoc test getter and setter"); testEntity.addStringProperty("simpleString"); testEntity.addStringProperty("indexedString").index(); testEntity.addStringProperty("indexedStringAscUnique").indexAsc(null, true); testEntity.addDateProperty("simpleDate"); testEntity.addBooleanProperty("simpleBoolean"); testEntity.addByteArrayProperty("simpleByteArray"); return testEntity; }