protected RuntimePropsDatasource loadRuntimePropsDatasource(Element element){ String id = getDatasourceId(element); MetaClass metaClass = loadMetaClass(element); String mainDsId = element.attributeValue("mainDs"); if (mainDsId == null) { throw new IllegalStateException("RuntimePropsDs attributes not specified"); } String categorizedEntityClassName = element.attributeValue("categorizedEntityClass"); MetaClass categorizedEntityMetaClass = null; if (StringUtils.isNotBlank(categorizedEntityClassName)) { final Class<?> aClass = ReflectionHelper.getClass(categorizedEntityClassName); categorizedEntityMetaClass = metadata.getSession().getClass(aClass); } builder.reset().setMetaClass(metaClass).setId(id); RuntimePropsDatasource datasource = builder.buildRuntimePropsDatasource(mainDsId, categorizedEntityMetaClass); loadDatasources(element, datasource); return datasource; }
private void initCollectionDatasourceAttributes(Element element, MetaClass metaClass) { String id = getDatasourceId(element); String viewName = element.attributeValue("view"); String deletion = element.attributeValue("softDeletion"); boolean softDeletion = deletion == null || Boolean.parseBoolean(deletion); boolean cacheable = Boolean.parseBoolean(element.attributeValue("cacheable")); builder.reset() .setMetaClass(metaClass) .setId(id) .setViewName(viewName) .setSoftDeletion(softDeletion) .setCacheable(cacheable) .setRefreshMode(getRefreshMode(element)) .setMaxResults(getMaxResults(element)) .setAllowCommit(getAllowCommit(element)); }
private ValueGroupDatasourceImpl loadValueGroupDatasource(Element element) { String id = getDatasourceId(element); builder.reset().setMetaClass(metadata.getClassNN(KeyValueEntity.class)).setId(id); ValueGroupDatasourceImpl datasource = builder .setDsClass(getDatasourceClass(element)) .buildValuesGroupDatasource(); String maxResults = element.attributeValue("maxResults"); if (!StringUtils.isEmpty(maxResults)) datasource.setMaxResults(Integer.parseInt(maxResults)); datasource.setSuspended(true); loadQuery(element, datasource); loadProperties(element, datasource); datasource.setStoreName(element.attributeValue("store")); return datasource; }
protected void initDatasource() { entitiesDs = DsBuilder.create(getDsContext()) .setId("entitiesDs") .setMetaClass(metaClass) .setView(view) .buildCollectionDatasource(); entitiesDs.setQuery(String.format("select e from %s e", metaClass.getName())); }
private void initDatasourceAttributes(Element element) { String id = getDatasourceId(element); MetaClass metaClass = loadMetaClass(element); String viewName = element.attributeValue("view"); builder.reset() .setMetaClass(metaClass) .setId(id) .setViewName(viewName) .setAllowCommit(getAllowCommit(element)); }
private ValueHierarchicalDatasourceImpl loadValueHierarchicalDatasource(Element element) { String id = getDatasourceId(element); builder.reset().setMetaClass(metadata.getClassNN(KeyValueEntity.class)).setId(id); ValueHierarchicalDatasourceImpl datasource = builder .setDsClass(getDatasourceClass(element)) .buildValuesHierarchicalDatasource(); String maxResults = element.attributeValue("maxResults"); if (!StringUtils.isEmpty(maxResults)) datasource.setMaxResults(Integer.parseInt(maxResults)); datasource.setSuspended(true); loadQuery(element, datasource); loadProperties(element, datasource); String hierarchyProperty = element.attributeValue("hierarchyProperty"); if (!StringUtils.isEmpty(hierarchyProperty)) { datasource.setHierarchyPropertyName(hierarchyProperty); } datasource.setStoreName(element.attributeValue("store")); return datasource; }
private ValueCollectionDatasourceImpl loadValueCollectionDatasource(Element element) { String id = getDatasourceId(element); builder.reset().setMetaClass(metadata.getClassNN(KeyValueEntity.class)).setId(id); ValueCollectionDatasourceImpl datasource = builder .setDsClass(getDatasourceClass(element)) .buildValuesCollectionDatasource(); String maxResults = element.attributeValue("maxResults"); if (!StringUtils.isEmpty(maxResults)) datasource.setMaxResults(Integer.parseInt(maxResults)); datasource.setSuspended(true); loadQuery(element, datasource); loadProperties(element, datasource); datasource.setStoreName(element.attributeValue("store")); return datasource; }
protected GroupDatasource createDataSource(String dataSetName, List<KeyValueEntity> keyValueEntities, Map<String, Set<Pair<String, Class>>> headerMap) { DsBuilder dsBuilder = DsBuilder.create(getDsContext()) .setId(dataSetName + "Ds") .setDataSupplier(getDsContext().getDataSupplier()); ValueGroupDatasourceImpl ds = dsBuilder.buildValuesGroupDatasource(); ds.setRefreshMode(CollectionDatasource.RefreshMode.NEVER); Set<Pair<String, Class>> headers = headerMap.get(dataSetName); for (Pair<String, Class> pair : headers) { Class javaClass = pair.getSecond(); if (Entity.class.isAssignableFrom(javaClass) || EnumClass.class.isAssignableFrom(javaClass) || Datatypes.get(javaClass) != null) { ds.addProperty(pair.getFirst(), pair.getSecond()); } } dsContext.register(ds); keyValueEntities.forEach(ds::includeItem); return ds; }
private void initPropertyDatasourceAttributes(Element element, Datasource ds, String property) { String id = getDatasourceId(element); MetaClass metaClass = ds.getMetaClass(); metaClass.getPropertyNN(property); // check property existence builder.reset() .setMetaClass(metaClass) .setId(id) .setMaster(ds) .setProperty(property) .setAllowCommit(getAllowCommit(element)); }
.setId("entitiesDs") .setMetaClass(metaClass) .setView(buildView(metaClass, metaProperties))
CollectionDatasource cds = builder .setRefreshMode(RefreshMode.NEVER) .setId("entities_" + parameter.getAlias()) .setMetaClass(entityMetaClass) .setViewName(View.LOCAL)
.setId("entitiesDs") .setMetaClass(meta) .setView(createView(meta))