@SuppressWarnings("serial") private List<Statement> generateDataFieldMetas(final String dataFieldMetasVarName, final Decorable decorable) { final Map<String, DataField> annoMap = DataFieldCodeDecorator.aggregateDataFieldAnnotationMap(decorable, decorable.getType()); final List<Statement> stmts = new ArrayList<>(annoMap.size()+1); stmts.add(declareFinalVariable(dataFieldMetasVarName, new TypeLiteral<Map<String, DataFieldMeta>>() { }, newObject(parameterizedAs(HashMap.class, typeParametersOf(String.class, DataFieldMeta.class)), annoMap.size()))); annoMap .entrySet() .stream() .map(entry -> { final String fieldName = entry.getKey(); final DataField dataField = entry.getValue(); Statement dataFieldMetaInstance; if (dataField.attributeRules().length == 0 && dataField.defaultStrategy().equals(ConflictStrategy.USE_TEMPLATE)) { dataFieldMetaInstance = newObject(DataFieldMeta.class); } else { dataFieldMetaInstance = newObject(DataFieldMeta.class, loadLiteral(dataField.attributeRules()), loadLiteral(dataField.defaultStrategy())); } return loadVariable(dataFieldMetasVarName).invoke("put", fieldName, dataFieldMetaInstance); }) .collect(Collectors.toCollection(() -> stmts)); return stmts; }
@SuppressWarnings("serial") private List<Statement> generateDataFieldMetas(final String dataFieldMetasVarName, final Decorable decorable) { final Map<String, DataField> annoMap = DataFieldCodeDecorator.aggregateDataFieldAnnotationMap(decorable, decorable.getType()); final List<Statement> stmts = new ArrayList<>(annoMap.size()+1); stmts.add(declareFinalVariable(dataFieldMetasVarName, new TypeLiteral<Map<String, DataFieldMeta>>() { }, newObject(parameterizedAs(HashMap.class, typeParametersOf(String.class, DataFieldMeta.class)), annoMap.size()))); annoMap .entrySet() .stream() .map(entry -> { final String fieldName = entry.getKey(); final DataField dataField = entry.getValue(); Statement dataFieldMetaInstance; if (dataField.attributeRules().length == 0 && dataField.defaultStrategy().equals(ConflictStrategy.USE_TEMPLATE)) { dataFieldMetaInstance = newObject(DataFieldMeta.class); } else { dataFieldMetaInstance = newObject(DataFieldMeta.class, loadLiteral(dataField.attributeRules()), loadLiteral(dataField.defaultStrategy())); } return loadVariable(dataFieldMetasVarName).invoke("put", fieldName, dataFieldMetaInstance); }) .collect(Collectors.toCollection(() -> stmts)); return stmts; }
public abstract class DefEditorBaseViewImpl extends BaseEditorViewImpl { @Inject @DataField( "actions-panel" ) protected DefEditorActionsPanel actionsPanel; protected void init( DefEditorActionsPanelView.Presenter presenter ) { actionsPanel.setSaveCommand( new Command( ) { @Override public void execute( ) { presenter.onSave( ); } } ); actionsPanel.setCancelCommand( new Command( ) { @Override public void execute( ) { presenter.onCancel( ); } } ); actionsPanel.setDeleteCommand( new Command( ) { @Override public void execute( ) { presenter.onDelete( ); } } ); } }
@Templated public class DropdownHeaderWidget implements IsElement { @Inject @DataField("dropdown-header") private ListItem header; public void init(final String title) { header.setTextContent(title); } }
@Templated("AddBranchPopUpView.html#branch") public static class BranchOptionView implements IsElement { @Inject @DataField("branch") HTMLOptionElement option; public void setup(final String branchName) { option.value = branchName; option.innerHTML = branchName; } } }
@Templated @Dependent public class InfoTitleView extends Composite implements InfoTitlePresenter.View { @Inject @DataField("groupId") Span groupId; @Inject @DataField("artifactId") Span artifactId; @Override public void setup(final String groupId, final String artifactId) { this.groupId.setText(checkNotEmpty("groupId", groupId)); this.artifactId.setText(checkNotEmpty("artifactId", artifactId)); } }
@Templated public class NoItemsComponentViewImpl implements NoItemsComponentView, IsElement { @Inject @DataField private Div container; @Inject @DataField private Span message; @Override public void setMessage(String msg) { message.setTextContent(msg); } @Override public void hide() { container.setHidden(true); } @Override public void show() { container.setHidden(false); } }
@Templated @Dependent public class AuditTableItem implements IsElement { @DataField("content") private HTMLDivElement content; @Inject public AuditTableItem(final HTMLDivElement content) { this.content = content; } public void setText(final String text) { content.textContent = text; } }
@Templated @Dependent public class WidgetElementRendererViewImpl implements WidgetElementRendererView, IsElement { @Inject @DataField private Div content; @Override public WidgetElementRendererView setWidget(final IsWidget widget) { DOMUtil.appendWidgetToElement(content, widget); return this; } }
@Templated public class FilterLabelView implements FilterLabel.View, IsElement { @Inject @DataField Span labelText; @Inject @DataField Anchor labelRemove; FilterLabel presenter; @Override public void init(FilterLabel presenter) { this.presenter = presenter; } @Override public void setLabel(String label) { labelText.setTextContent(label); } @EventHandler("labelRemove") private void onRemove(ClickEvent event) { presenter.onRemove(); } }
@Templated public class DisabledFeatureComponentViewImpl implements DisabledFeatureComponentView, IsElement { @Inject @DataField private HTMLDivElement content; @Inject private Elemental2DomUtil util; @Override public void show(String text) { util.removeAllElementChildren(content); content.innerHTML = text; } }
@Templated public class FilterLabelView implements FilterLabel.View, IsElement { @Inject @DataField Span labelText; @Inject @DataField Anchor labelRemove; FilterLabel presenter; @Override public void init(FilterLabel presenter) { this.presenter = presenter; } @Override public void setLabel(String label) { labelText.setTextContent(label); } @EventHandler("labelRemove") private void onRemove(ClickEvent event) { presenter.onRemove(); } }
@Templated public class NoItemsComponentViewImpl implements NoItemsComponentView, IsElement { @Inject @DataField private Div container; @Inject @DataField private Span message; @Override public void setMessage(String msg) { message.setTextContent(msg); } @Override public void hide() { container.setHidden(true); } @Override public void show() { container.setHidden(false); } }
@Templated public class DisabledFeatureComponentViewImpl implements DisabledFeatureComponentView, IsElement { @Inject @DataField private HTMLDivElement content; @Inject private Elemental2DomUtil util; @Override public void show(String text) { util.removeAllElementChildren(content); content.innerHTML = text; } }
@Templated @Dependent public class DefaultPreferenceFormView implements DefaultPreferenceForm.View, IsElement { private DefaultPreferenceForm presenter; @Inject @DataField("properties-editor") PropertyEditorWidget propertiesEditorWidget; @Override public void init(final DefaultPreferenceForm presenter) { this.presenter = presenter; propertiesEditorWidget.setLastOpenAccordionGroupTitle("Properties"); propertiesEditorWidget.handle(presenter.generatePropertyEditorEvent()); } }
@Templated public class ProjectServiceTasksView implements ProjectServiceTasksPresenter.View { @Inject @Named("tbody") @DataField("serviceTasks") private HTMLTableSectionElement serviceTasks; @Inject @Named("h3") @DataField("title") private HTMLHeadingElement title; @Override public void init(final ProjectServiceTasksPresenter presenter) { } @Override public Element getServiceTasksTable() { return serviceTasks; } @Override public String getTitle() { return title.textContent; } }
@Templated @Dependent public class DefaultPreferenceFormView implements DefaultPreferenceForm.View, IsElement { private DefaultPreferenceForm presenter; @Inject @DataField("properties-editor") PropertyEditorWidget propertiesEditorWidget; @Override public void init(final DefaultPreferenceForm presenter) { this.presenter = presenter; propertiesEditorWidget.setLastOpenAccordionGroupTitle("Properties"); propertiesEditorWidget.handle(presenter.generatePropertyEditorEvent()); } }