void mapObject(Object obj) { fieldMap.clear(); initObject(obj, fieldMap); if (clazz.isAnnotationPresent(JQSchema.class)) { JQSchema schemaAnnotation = clazz.getAnnotation(JQSchema.class); // setup schema name mapping, if properly annotated if (!StringUtils.isNullOrEmpty(schemaAnnotation.name())) { schemaName = schemaAnnotation.name(); } } if (clazz.isAnnotationPresent(JQTable.class)) { JQTable tableAnnotation = clazz.getAnnotation(JQTable.class); // setup table name mapping, if properly annotated if (!StringUtils.isNullOrEmpty(tableAnnotation.name())) { tableName = tableAnnotation.name(); } // allow control over createTableIfRequired() createTableIfRequired = tableAnnotation.createIfRequired(); // model version if (tableAnnotation.version() > 0) { tableVersion = tableAnnotation.version(); } // setup the primary index, if properly annotated List<String> primaryKey = getColumns(tableAnnotation.primaryKey()); if (primaryKey != null) { setPrimaryKey(primaryKey); } } if (clazz.isAnnotationPresent(JQIndex.class)) { JQIndex indexAnnotation = clazz.getAnnotation(JQIndex.class); // setup the indexes, if properly annotated addIndexes(IndexType.STANDARD, indexAnnotation.standard()); addIndexes(IndexType.UNIQUE, indexAnnotation.unique()); addIndexes(IndexType.HASH, indexAnnotation.hash()); addIndexes(IndexType.UNIQUE_HASH, indexAnnotation.uniqueHash()); } }