@Override protected RelationalModelNode getRelationalModelNode( ModelerWorkspace workspace ) { RelationalModelNode relationalModel = null; if ( workspace.getRelationalModel() == null ) { relationalModel = new RelationalModelNode(); relationalModel.setWorkspace( workspace ); } else { workspace.getRelationalModel().getCategories().clear(); relationalModel = workspace.getRelationalModel(); } return relationalModel; }
final boolean prevChangeState = workspace.isModelChanging(); workspace.getRelationalModel().getCategories().clear(); workspace.setSelectedRelationalNode( workspace.getRelationalModel() );
@Override public void clearTreeModel() { workspace.setRelationalModelIsChanging( true ); // remove all logical columns from existing logical tables for ( LogicalTable table : workspace.getLogicalModel( ModelerPerspective.REPORTING ).getLogicalTables() ) { table.getLogicalColumns().clear(); } workspace.getRelationalModel().getCategories().clear(); workspace.setRelationalModelIsChanging( false, true ); }
@Bindable public void showValidationMessagesDialog() { AbstractMetaDataModelNode node; if ( workspace.getCurrentModelerPerspective() == ModelerPerspective.ANALYSIS ) { node = workspace.getSelectedNode(); if ( node == null ) { node = workspace.getModel(); } } else { node = workspace.getSelectedRelationalNode(); if ( node == null ) { node = workspace.getRelationalModel(); } } showValidationMessages( new ArrayList<String>( node.getValidationMessages() ) ); }
public void onClose( XulComponent sender, Status returnCode, Object retVal ) { if ( returnCode == Status.ACCEPT ) { CategoryMetaDataCollection theNode = workspace.getRelationalModel().getCategories(); CategoryMetaData theCategory = new CategoryMetaData( "" + retVal ); boolean prevChangeState = workspace.isModelChanging(); theCategory.validate(); workspace.setRelationalModelIsChanging( true ); theNode.add( theCategory ); theCategory.setExpanded( true ); workspace.setRelationalModelIsChanging( prevChangeState ); } }
protected void populateCategories( ModelerWorkspace workspace ) { RelationalModelNode model = workspace.getRelationalModel(); LogicalModel logicalModel = workspace.getDomain().getLogicalModels().get( 0 ); logicalModel.getCategories().clear(); for ( CategoryMetaData catMeta : model.getCategories() ) { Category cat = new Category(); cat.setName( new LocalizedString( this.getLocale(), catMeta.getName() ) ); cat.setId( catMeta.getName() ); for ( FieldMetaData fieldMeta : catMeta ) { LogicalColumn lCol = fieldMeta.getLogicalColumn(); LogicalTable lTable = lCol.getLogicalTable(); if ( !lTable.getLogicalColumns().contains( lCol ) ) { lTable.addLogicalColumn( lCol ); } lCol.setName( new LocalizedString( locale, fieldMeta.getName() ) ); AggregationType type = fieldMeta.getDefaultAggregation(); lCol.setAggregationType( type ); setLogicalColumnFormat( fieldMeta.getFormat(), lCol ); Set<AggregationType> possibleAggs = new HashSet<AggregationType>(); possibleAggs.add( fieldMeta.getDefaultAggregation() ); possibleAggs.addAll( fieldMeta.getSelectedAggregations() ); lCol.setAggregationList( Arrays.<AggregationType>asList( possibleAggs .toArray( new AggregationType[possibleAggs.size()] ) ) ); cat.addLogicalColumn( lCol ); } logicalModel.addCategory( cat ); } }
@Bindable public void showAutopopulatePrompt() { try { if ( getModelerPerspective() == ModelerPerspective.ANALYSIS ) { MainModelNode model = workspace.getModel(); if ( model.getDimensions().isEmpty() && model.getMeasures().isEmpty() ) { autoPopulate(); } else { showAutoModelConfirmDialog(); } } else { RelationalModelNode model = workspace.getRelationalModel(); if ( model.getCategories().isEmpty() ) { autoPopulate(); } else { showAutoModelConfirmDialog(); } } } catch ( XulException e ) { e.printStackTrace(); } }
this.getRelationalModel().getCategories().add( catMeta );
bf.createBinding( workspace.getModel(), "name", workspace.getRelationalModel(), "name" ); bf.createBinding( workspace, "selectedNode", dimensionTree, "selectedItems", new BindingConvertor<AbstractMetaDataModelNode, Collection>() { //$NON-NLS-1$//$NON-NLS-2$ if ( workspace.getRelationalModel().size() > 0 ) { categoriesTree.setSelectedItems( Collections.singletonList( workspace.getRelationalModel() ) );