Search in sources :

Example 56 with Path

use of org.uberfire.backend.vfs.Path in project drools-wb by kiegroup.

the class GuidedDecisionTableGraphEditorPresenterTest method getPresenter.

@Override
protected GuidedDecisionTableGraphEditorPresenter getPresenter() {
    return new GuidedDecisionTableGraphEditorPresenter(view, dtServiceCaller, dtGraphServiceCaller, moduleServiceCaller, graphSaveAndRenameServiceCaller, notification, saveInProgressEvent, decisionTableSelectedEvent, validationPopup, dtGraphResourceType, editMenuBuilder, viewMenuBuilder, insertMenuBuilder, radarMenuBuilder, modeller, helper, beanManager, placeManager, lockManager, columnsPage, saveAndRenameCommandBuilder, alertsButtonMenuItemBuilder) {

        {
            workbenchContext = GuidedDecisionTableGraphEditorPresenterTest.this.workbenchContext;
            projectController = GuidedDecisionTableGraphEditorPresenterTest.this.projectController;
        }

        @Override
        protected Command getSaveAndRenameCommand() {
            return mock(Command.class);
        }

        @Override
        PathPlaceRequest getPathPlaceRequest(final Path path) {
            // Avoid use of IOC.getBeanManager().lookupBean(..) in PathPlaceRequest for Unit Tests
            final PathPlaceRequest pathPlaceRequest = new PathPlaceRequest(path) {

                @Override
                protected ObservablePath createObservablePath(final Path path) {
                    final ObservablePath op = new ObservablePathImpl().wrap(path);
                    return op;
                }
            };
            return pathPlaceRequest;
        }
    };
}
Also used : ObservablePath(org.uberfire.backend.vfs.ObservablePath) Path(org.uberfire.backend.vfs.Path) ObservablePathImpl(org.uberfire.backend.vfs.impl.ObservablePathImpl) PathPlaceRequest(org.uberfire.mvp.impl.PathPlaceRequest) ObservablePath(org.uberfire.backend.vfs.ObservablePath)

Example 57 with Path

use of org.uberfire.backend.vfs.Path in project drools-wb by kiegroup.

the class NewGuidedDecisionTableWizardHelperTest method setup.

@Before
public void setup() {
    dtServiceCaller = new CallerMock<>(dtService);
    model = new GuidedDecisionTable52();
    model.setTableFormat(tableFormat);
    model.setHitPolicy(hitPolicy);
    helper = new NewGuidedDecisionTableWizardHelper(dtServiceCaller, oracleFactory, beanManager);
    when(beanManager.lookupBean(eq(NewGuidedDecisionTableWizard.class))).thenReturn(wizardBeanDef);
    when(wizardBeanDef.getInstance()).thenReturn(wizardBean);
    when(dtService.loadDataModel(eq(contextPath))).thenReturn(oracleBasePayload);
    when(dtService.create(any(Path.class), any(String.class), any(GuidedDecisionTable52.class), any(String.class))).<Path>thenAnswer((invocation) -> {
        final Path path = ((Path) invocation.getArguments()[0]);
        final String fileName = ((String) invocation.getArguments()[1]);
        final Path newPath = PathFactory.newPath(fileName, path.toURI() + "/" + fileName);
        return newPath;
    });
    when(oracleFactory.makeAsyncPackageDataModelOracle(contextPath, oracleBasePayload)).thenReturn(oracle);
}
Also used : Path(org.uberfire.backend.vfs.Path) GuidedDecisionTable52(org.drools.workbench.models.guided.dtable.shared.model.GuidedDecisionTable52) NewGuidedDecisionTableWizard(org.drools.workbench.screens.guided.dtable.client.wizard.table.NewGuidedDecisionTableWizard) Before(org.junit.Before)

Example 58 with Path

use of org.uberfire.backend.vfs.Path in project drools-wb by kiegroup.

the class GuidedRuleEditorServiceImpl method constructContent.

@Override
protected GuidedEditorContent constructContent(Path path, Overview overview) {
    final RuleModel model = load(path);
    final PackageDataModelOracle oracle = dataModelService.getDataModel(path);
    final PackageDataModelOracleBaselinePayload dataModel = new PackageDataModelOracleBaselinePayload();
    // Get FQCN's used by model
    final GuidedRuleModelVisitor visitor = new GuidedRuleModelVisitor(model);
    final Set<String> consumedFQCNs = visitor.getConsumedModelClasses();
    // Get FQCN's used by Globals
    consumedFQCNs.addAll(oracle.getPackageGlobals().values());
    // Get FQCN's of collections defined in project settings
    // they can be used in From Collect expressions
    consumedFQCNs.addAll(oracle.getModuleCollectionTypes().entrySet().stream().filter(entry -> entry.getValue()).map(entry -> entry.getKey()).collect(Collectors.toSet()));
    DataModelOracleUtilities.populateDataModel(oracle, dataModel, consumedFQCNs);
    // Signal opening to interested parties
    resourceOpenedEvent.fire(new ResourceOpenedEvent(path, safeSessionInfo));
    return new GuidedEditorContent(model, overview, dataModel);
}
Also used : PackageDataModelOracleBaselinePayload(org.kie.workbench.common.services.datamodel.model.PackageDataModelOracleBaselinePayload) GuidedEditorContent(org.drools.workbench.screens.guided.rule.model.GuidedEditorContent) RuleModel(org.drools.workbench.models.datamodel.rule.RuleModel) ValidationMessage(org.guvnor.common.services.shared.validation.model.ValidationMessage) PackageDataModelOracle(org.kie.soup.project.datamodel.oracle.PackageDataModelOracle) Metadata(org.guvnor.common.services.shared.metadata.model.Metadata) RuleModelDRLPersistenceImpl(org.drools.workbench.models.commons.backend.rule.RuleModelDRLPersistenceImpl) ArrayList(java.util.ArrayList) Package(org.guvnor.common.services.project.model.Package) Paths(org.uberfire.backend.server.util.Paths) Inject(javax.inject.Inject) ExceptionUtilities(org.guvnor.common.services.backend.exceptions.ExceptionUtilities) CommentedOptionFactory(org.guvnor.common.services.backend.util.CommentedOptionFactory) Overview(org.guvnor.common.services.shared.metadata.model.Overview) Service(org.jboss.errai.bus.server.annotations.Service) SafeSessionInfo(org.guvnor.common.services.backend.config.SafeSessionInfo) SessionInfo(org.uberfire.rpc.SessionInfo) GuidedRuleDSLRResourceTypeDefinition(org.drools.workbench.screens.guided.rule.type.GuidedRuleDSLRResourceTypeDefinition) Named(javax.inject.Named) KieService(org.kie.workbench.common.services.backend.service.KieService) RenameService(org.uberfire.ext.editor.commons.service.RenameService) Instance(javax.enterprise.inject.Instance) GuidedRuleDRLResourceTypeDefinition(org.drools.workbench.screens.guided.rule.type.GuidedRuleDRLResourceTypeDefinition) Path(org.uberfire.backend.vfs.Path) DeleteService(org.uberfire.ext.editor.commons.service.DeleteService) Event(javax.enterprise.event.Event) DataModelService(org.kie.workbench.common.services.datamodel.backend.server.service.DataModelService) SaveAndRenameServiceImpl(org.uberfire.ext.editor.commons.backend.service.SaveAndRenameServiceImpl) RuleModelIActionPersistenceExtension(org.drools.workbench.models.commons.backend.rule.RuleModelIActionPersistenceExtension) Collection(java.util.Collection) DataModelOracleUtilities(org.kie.workbench.common.services.datamodel.backend.server.DataModelOracleUtilities) Set(java.util.Set) Import(org.kie.soup.project.datamodel.imports.Import) Collectors(java.util.stream.Collectors) ResourceOpenedEvent(org.uberfire.workbench.events.ResourceOpenedEvent) GenericValidator(org.guvnor.common.services.backend.validation.GenericValidator) List(java.util.List) GuidedRuleEditorService(org.drools.workbench.screens.guided.rule.service.GuidedRuleEditorService) PostConstruct(javax.annotation.PostConstruct) IOService(org.uberfire.io.IOService) ApplicationScoped(javax.enterprise.context.ApplicationScoped) FileAlreadyExistsException(org.uberfire.java.nio.file.FileAlreadyExistsException) CopyService(org.uberfire.ext.editor.commons.service.CopyService) PackageDataModelOracleBaselinePayload(org.kie.workbench.common.services.datamodel.model.PackageDataModelOracleBaselinePayload) GuidedEditorContent(org.drools.workbench.screens.guided.rule.model.GuidedEditorContent) PackageDataModelOracle(org.kie.soup.project.datamodel.oracle.PackageDataModelOracle) ResourceOpenedEvent(org.uberfire.workbench.events.ResourceOpenedEvent) RuleModel(org.drools.workbench.models.datamodel.rule.RuleModel)

Example 59 with Path

use of org.uberfire.backend.vfs.Path in project drools-wb by kiegroup.

the class GuidedRuleEditorServiceImpl method create.

@Override
public Path create(final Path context, final String fileName, final RuleModel model, final String comment) {
    try {
        final Package pkg = moduleService.resolvePackage(context);
        final String packageName = (pkg == null ? null : pkg.getPackageName());
        model.setPackageName(packageName);
        // Temporal fix for https://bugzilla.redhat.com/show_bug.cgi?id=998922
        model.getImports().addImport(new Import("java.lang.Number"));
        final org.uberfire.java.nio.file.Path nioPath = Paths.convert(context).resolve(fileName);
        final Path newPath = Paths.convert(nioPath);
        if (ioService.exists(nioPath)) {
            throw new FileAlreadyExistsException(nioPath.toString());
        }
        ioService.write(nioPath, toSource(newPath, model), commentedOptionFactory.makeCommentedOption(comment));
        return newPath;
    } catch (Exception e) {
        throw ExceptionUtilities.handleException(e);
    }
}
Also used : Path(org.uberfire.backend.vfs.Path) FileAlreadyExistsException(org.uberfire.java.nio.file.FileAlreadyExistsException) Import(org.kie.soup.project.datamodel.imports.Import) Package(org.guvnor.common.services.project.model.Package) FileAlreadyExistsException(org.uberfire.java.nio.file.FileAlreadyExistsException)

Example 60 with Path

use of org.uberfire.backend.vfs.Path in project drools-wb by kiegroup.

the class EnumDropDownServiceTest method testLoadDropDown.

@Test
public void testLoadDropDown() throws Exception {
    // Override code that converts Path to ClassLoader for test
    final ClassLoader cl = Thread.currentThread().getContextClassLoader();
    final EnumDropdownService service = new EnumDropdownServiceImpl() {

        @Override
        public String[] loadDropDownExpression(final Path resource, final String[] valuePairs, final String expression) {
            return super.loadDropDownExpression(cl, new RawMVELEvaluator(), valuePairs, expression);
        }
    };
    final String[] pairs = new String[] { "f1=x", "f2=2" };
    final String expression = "['@{f1}', '@{f2}']";
    final String[] r = service.loadDropDownExpression(mock(Path.class), pairs, expression);
    assertEquals(2, r.length);
    assertEquals("x", r[0]);
    assertEquals("2", r[1]);
}
Also used : Path(org.uberfire.backend.vfs.Path) EnumDropdownServiceImpl(org.kie.workbench.common.services.backend.enums.EnumDropdownServiceImpl) RawMVELEvaluator(org.kie.soup.project.datamodel.commons.util.RawMVELEvaluator) EnumDropdownService(org.kie.workbench.common.services.shared.enums.EnumDropdownService) Test(org.junit.Test)

Aggregations

Path (org.uberfire.backend.vfs.Path)136 Test (org.junit.Test)98 Metadata (org.guvnor.common.services.shared.metadata.model.Metadata)27 Package (org.guvnor.common.services.project.model.Package)23 GuidedDecisionTable52 (org.drools.workbench.models.guided.dtable.shared.model.GuidedDecisionTable52)20 FileAlreadyExistsException (org.uberfire.java.nio.file.FileAlreadyExistsException)19 ArrayList (java.util.ArrayList)13 NotificationEvent (org.uberfire.workbench.events.NotificationEvent)13 CommentedOption (org.uberfire.java.nio.base.options.CommentedOption)12 GuidedDecisionTableEditorGraphModel (org.drools.workbench.screens.guided.dtable.model.GuidedDecisionTableEditorGraphModel)11 ValidationMessage (org.guvnor.common.services.shared.validation.model.ValidationMessage)10 NewResourceSuccessEvent (org.kie.workbench.common.widgets.client.handlers.NewResourceSuccessEvent)9 Mockito.anyString (org.mockito.Mockito.anyString)9 Overview (org.guvnor.common.services.shared.metadata.model.Overview)8 PackageDataModelOracle (org.kie.soup.project.datamodel.oracle.PackageDataModelOracle)8 ObservablePath (org.uberfire.backend.vfs.ObservablePath)8 List (java.util.List)7 GuidedDecisionTableEditorContent (org.drools.workbench.screens.guided.dtable.model.GuidedDecisionTableEditorContent)7 HashMap (java.util.HashMap)6 HashSet (java.util.HashSet)6