public void execute() { int editingFactIndex = factModels.getModels().indexOf( factMetaModel ); int newIndex = editingFactIndex - 1; swap( editingFactIndex, newIndex ); renderEditorArrows(); }
public void execute() { int editingFactIndex = factModels.getModels().indexOf( factMetaModel ); int newIndex = editingFactIndex + 1; swap( editingFactIndex, newIndex ); renderEditorArrows(); } };
private void swap( int editingFactIndex, int newIndex ) { Collections.swap( factModels.getModels(), editingFactIndex, newIndex ); factModelsPanel.swap( editingFactIndex, newIndex ); }
public void execute() { FactMetaModel factMetaModel = popup.getFactModel(); factModels.getModels().add( factMetaModel ); superTypeFactModels.add( factMetaModel ); addFactModelToStackPanel( factMetaModel ); } } );
public static String marshal( final FactModels content ) { final StringBuilder sb = new StringBuilder(); PackageNameWriter.write( sb, content ); ImportsWriter.write( sb, content ); for ( final FactMetaModel factMetaModel : content.getModels() ) { sb.append( toDRL( factMetaModel ) ).append( "\n\n" ); } return sb.toString().trim(); }
private void renderEditorArrows() { Iterator<AbstractLazyStackPanelHeader> iterator = factModelsPanel.getHeaderIterator(); while ( iterator.hasNext() ) { final AbstractLazyStackPanelHeader widget = iterator.next(); if ( widget instanceof FactModelEditor ) { final FactModelEditor editor = (FactModelEditor) widget; int index = factModels.getModels().indexOf( editor.getFactModel() ); editor.setUpVisible( index != 0 ); editor.setDownVisible( index != ( factModels.getModels().size() - 1 ) ); } } }
@Override public void setContent( final FactModels content, final List<FactMetaModel> superTypeFactModels, final ModelNameHelper modelNameHelper ) { this.factModels = content; this.superTypeFactModels = superTypeFactModels; this.modelNameHelper = modelNameHelper; this.factModelsPanel.clean(); for ( final FactMetaModel factMetaModel : factModels.getModels() ) { addFactModelToStackPanel( factMetaModel ); } }
@Override public FactModelContent loadContent( final Path path ) { final FactModels factModels = load( path ); final List<FactMetaModel> allAvailableTypes = loadAllAvailableTypes( path ); allAvailableTypes.addAll( factModels.getModels() ); final DataModelOracle oracle = dataModelService.getDataModel( path ); return new FactModelContent( factModels, allAvailableTypes, oracle ); }
public static FactModels unmarshal( final String content ) { try { //De-serialize model final List<FactMetaModel> models = toModel( content ); final FactModels factModels = new FactModels(); factModels.getModels().addAll( models ); //De-serialize Package name final String packageName = PackageNameParser.parsePackageName( content ); factModels.setPackageName( packageName ); //De-serialize imports final Imports imports = ImportsParser.parseImports( content ); factModels.setImports( imports ); return factModels; } catch ( final DroolsParserException e ) { throw new RuntimeException( e ); } //TODO {porcelli} needs define error handling strategy // log.error( "Unable to parse the DRL for the model - falling back to text (" + e.getMessage() + ")" ); // RuleContentText text = new RuleContentText(); // text.content = item.getContent(); // asset.setContent( text ); }
private List<FactMetaModel> loadAllAvailableTypes( final Path path ) { final List<FactMetaModel> allAvailableTypes = new ArrayList<FactMetaModel>(); final Path projectRoot = projectService.resolveProject( path ); if ( projectRoot == null ) { return allAvailableTypes; } final org.kie.commons.java.nio.file.Path nioProjectRoot = paths.convert( projectRoot ); final org.kie.commons.java.nio.file.Path nioSrcRoot = nioProjectRoot.resolve( "src/main/resources" ); final Collection<org.kie.commons.java.nio.file.Path> modelNioPaths = fileDiscoveryService.discoverFiles( nioSrcRoot, new FileExtensionFilter( typeDefinition.getSuffix() ), true ); for ( org.kie.commons.java.nio.file.Path modelNioPath : modelNioPaths ) { final Path modelPath = paths.convert( modelNioPath ); if ( !modelPath.equals( path ) ) { final List<FactMetaModel> model = load( modelPath ).getModels(); allAvailableTypes.addAll( model ); } } return allAvailableTypes; }