Hello, If I have the following java class: public class Person implements Serializable { /** */ private static final AtomicLong ID_GEN = new AtomicLong();
/** Person ID (indexed). */ @QuerySqlField(index = true) public Long id; /** Organization ID (indexed). */ @QuerySqlField(index = true) public Long orgId; /** First name (not-indexed). */ @QuerySqlField public String firstName; /** Last name (not indexed). */ @QuerySqlField public String lastName; /** Resume text (create LUCENE-based TEXT index for this field). */ @QueryTextField public String resume; /** Salary (indexed). */ @QuerySqlField(index = true) public double salary; /** Custom cache key to guarantee that person is always collocated with its organization. */ private transient AffinityKey<Long> key; And I want to create a table, I need to write the following code in java or put them in the config file. Is it possible to generate them automatically? As Java reflection seems can handle this? CacheConfiguration cacheCfg = new CacheConfiguration("Person"); QueryEntity entity = new QueryEntity(); entity.setKeyType("java.lang.Long"); entity.setValueType("Person"); LinkedHashMap<String,String> map = new LinkedHashMap<String, String>(); map.put("orgId", "java.lang.Long"); map.put("firstName", "java.lang.String"); map.put("lastName", "java.lang.String"); map.put("Resume", "java.lang.String"); map.put("Salary", "java.lang.double"); entity.setFields(map); entity.setIndexes(Collections.singletonList(new QueryIndex("orgId"))); List<QueryEntity> queryEntities = new ArrayList<>(); queryEntities.add(entity); cacheCfg.setQueryEntities(queryEntities); igniteConfiguration.setCacheConfiguration(cacheCfg); Ignite ignite = Ignition.start(igniteConfiguration); IgniteCache cache = ignite.getOrCreateCache("Person");