@SuppressWarnings("unchecked") @Override public Datasource getItemDatasource(Entity item) { if (fieldDatasources == null) { fieldDatasources = new WeakHashMap<>(); } Object fieldDatasource = fieldDatasources.get(item); if (fieldDatasource instanceof Datasource) { return (Datasource) fieldDatasource; } Datasource datasource = DsBuilder.create() .setAllowCommit(false) .setMetaClass(getDatasource().getMetaClass()) .setRefreshMode(CollectionDatasource.RefreshMode.NEVER) .setViewName("_local") .buildDatasource(); ((DatasourceImplementation) datasource).valid(); datasource.setItem(item); fieldDatasources.put(item, datasource); return datasource; }
protected Datasource createItemDatasource(E item) { EntityDataGridItems<E> items = getEntityDataGridItemsNN(); Datasource fieldDatasource = DsBuilder.create() .setAllowCommit(false) .setMetaClass(items.getEntityMetaClass()) .setRefreshMode(CollectionDatasource.RefreshMode.NEVER) .setViewName(View.LOCAL) .buildDatasource(); ((DatasourceImplementation) fieldDatasource).valid(); //noinspection unchecked fieldDatasource.setItem(item); return fieldDatasource; }