Search in sources :

Example 76 with Path

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

the class GuidedDecisionTableEditorServiceImpl method updateGraphElementPath.

private void updateGraphElementPath(final Path source, final Path destination, final Path graphPath) {
    final GuidedDecisionTableEditorGraphModel dtGraphModel = dtableGraphService.load(graphPath);
    final Set<GuidedDecisionTableEditorGraphModel.GuidedDecisionTableGraphEntry> dtGraphEntries = dtGraphModel.getEntries();
    dtGraphEntries.stream().filter((e) -> e.getPathHead().equals(source)).forEach((e) -> e.setPathVersion(destination));
    ioService.write(Paths.convert(graphPath), GuidedDTGraphXMLPersistence.getInstance().marshal(dtGraphModel), commentedOptionFactory.makeCommentedOption("Updated Path version for [" + source.toURI() + "] to [" + destination.toURI() + "]."));
}
Also used : PackageDataModelOracleBaselinePayload(org.kie.workbench.common.services.datamodel.model.PackageDataModelOracleBaselinePayload) GuidedDecisionTableEditorService(org.drools.workbench.screens.guided.dtable.service.GuidedDecisionTableEditorService) GuidedDecisionTableEditorContent(org.drools.workbench.screens.guided.dtable.model.GuidedDecisionTableEditorContent) ValidationMessage(org.guvnor.common.services.shared.validation.model.ValidationMessage) WorkItemsEditorService(org.drools.workbench.screens.workitems.service.WorkItemsEditorService) PackageDataModelOracle(org.kie.soup.project.datamodel.oracle.PackageDataModelOracle) Metadata(org.guvnor.common.services.shared.metadata.model.Metadata) Files(org.uberfire.java.nio.file.Files) Package(org.guvnor.common.services.project.model.Package) Paths(org.uberfire.backend.server.util.Paths) HashSet(java.util.HashSet) Inject(javax.inject.Inject) PathFactory(org.uberfire.backend.vfs.PathFactory) 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) KieModuleService(org.kie.workbench.common.services.shared.project.KieModuleService) Service(org.jboss.errai.bus.server.annotations.Service) SafeSessionInfo(org.guvnor.common.services.backend.config.SafeSessionInfo) SessionInfo(org.uberfire.rpc.SessionInfo) FileExtensionFilter(org.guvnor.common.services.backend.file.FileExtensionFilter) Named(javax.inject.Named) KieService(org.kie.workbench.common.services.backend.service.KieService) PortableWorkDefinition(org.drools.workbench.models.datamodel.workitems.PortableWorkDefinition) RenameService(org.uberfire.ext.editor.commons.service.RenameService) 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) GuidedDecisionTableEditorGraphModel(org.drools.workbench.screens.guided.dtable.model.GuidedDecisionTableEditorGraphModel) SaveAndRenameServiceImpl(org.uberfire.ext.editor.commons.backend.service.SaveAndRenameServiceImpl) GuidedDecisionTable52(org.drools.workbench.models.guided.dtable.shared.model.GuidedDecisionTable52) DataModelOracleUtilities(org.kie.workbench.common.services.datamodel.backend.server.DataModelOracleUtilities) Set(java.util.Set) Collectors(java.util.stream.Collectors) GuidedDecisionTableGraphEditorService(org.drools.workbench.screens.guided.dtable.service.GuidedDecisionTableGraphEditorService) ResourceOpenedEvent(org.uberfire.workbench.events.ResourceOpenedEvent) GenericValidator(org.guvnor.common.services.backend.validation.GenericValidator) List(java.util.List) VersionRecord(org.uberfire.java.nio.base.version.VersionRecord) PostConstruct(javax.annotation.PostConstruct) IOService(org.uberfire.io.IOService) ApplicationScoped(javax.enterprise.context.ApplicationScoped) FileAlreadyExistsException(org.uberfire.java.nio.file.FileAlreadyExistsException) GuidedDTXMLPersistence(org.drools.workbench.models.guided.dtable.backend.GuidedDTXMLPersistence) GuidedDTableGraphResourceTypeDefinition(org.drools.workbench.screens.guided.dtable.type.GuidedDTableGraphResourceTypeDefinition) VersionRecordService(org.uberfire.ext.editor.commons.backend.version.VersionRecordService) CopyService(org.uberfire.ext.editor.commons.service.CopyService) GuidedDecisionTableEditorGraphModel(org.drools.workbench.screens.guided.dtable.model.GuidedDecisionTableEditorGraphModel)

Example 77 with Path

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

the class GuidedDecisionTableEditorServiceImpl method create.

@Override
public Path create(final Path context, final String fileName, final GuidedDecisionTable52 content, final String comment) {
    try {
        final Package pkg = moduleService.resolvePackage(context);
        final String packageName = (pkg == null ? null : pkg.getPackageName());
        content.setPackageName(packageName);
        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, GuidedDTXMLPersistence.getInstance().marshal(content), 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) Package(org.guvnor.common.services.project.model.Package) FileAlreadyExistsException(org.uberfire.java.nio.file.FileAlreadyExistsException)

Example 78 with Path

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

the class GuidedDecisionTableGraphEditorServiceImpl method listDecisionTablesInPackage.

@Override
public List<Path> listDecisionTablesInPackage(final Path path) {
    try {
        final Package pkg = moduleService.resolvePackage(path);
        if (pkg == null) {
            return Collections.emptyList();
        }
        final Path pkgPath = pkg.getPackageMainResourcesPath();
        final org.uberfire.java.nio.file.Path nioPkgPath = Paths.convert(pkgPath);
        final List<Path> paths = findDecisionTables(nioPkgPath);
        return paths;
    } catch (Exception e) {
        throw ExceptionUtilities.handleException(e);
    }
}
Also used : Path(org.uberfire.backend.vfs.Path) Package(org.guvnor.common.services.project.model.Package) FileAlreadyExistsException(org.uberfire.java.nio.file.FileAlreadyExistsException)

Example 79 with Path

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

the class GuidedDTGraphXMLPersistenceTest method checkMarshallingModelWithoutEntryPosition.

@Test
public void checkMarshallingModelWithoutEntryPosition() {
    final Path path = PathFactory.newPath("path", "default://path");
    final GuidedDecisionTableEditorGraphModel model = new GuidedDecisionTableEditorGraphModel();
    model.getEntries().add(new GuidedDecisionTableEditorGraphModel.GuidedDecisionTableGraphEntry(path, path));
    final String xml = GuidedDTGraphXMLPersistence.getInstance().marshal(model);
    assertNotNull(xml);
    assertEqualsIgnoreWhitespace("<graph>\n" + "  <entries>\n" + "    <entry>\n" + "      <pathHead class=\"org.uberfire.backend.vfs.PathFactory$PathImpl\">\n" + "        <uri>default://path</uri>\n" + "        <fileName>path</fileName>\n" + "        <attributes/>\n" + "        <hasVersionSupport>false</hasVersionSupport>\n" + "      </pathHead>\n" + "      <pathVersion class=\"org.uberfire.backend.vfs.PathFactory$PathImpl\" reference=\"../pathHead\"/>\n" + "    </entry>\n" + "  </entries>\n" + "</graph>", xml);
}
Also used : Path(org.uberfire.backend.vfs.Path) GuidedDecisionTableEditorGraphModel(org.drools.workbench.screens.guided.dtable.model.GuidedDecisionTableEditorGraphModel) Test(org.junit.Test)

Example 80 with Path

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

the class GuidedDecisionTableEditorGraphDeleteHelperTest method checkRemoveReferencesWithDecisionTableGraphs.

@Test
public void checkRemoveReferencesWithDecisionTableGraphs() throws URISyntaxException {
    final org.uberfire.java.nio.file.Path dtGraphPath = mock(org.uberfire.java.nio.file.Path.class);
    when(dtGraphPath.getFileName()).thenReturn(mock(org.uberfire.java.nio.file.Path.class));
    when(dtGraphPath.toUri()).thenReturn(new URI("default://test/dtable-set." + dtableGraphType.getSuffix()));
    when(dtGraphPath.getFileSystem()).thenReturn(fileSystem);
    paths.add(dtGraphPath);
    when(path.getFileName()).thenReturn("dtable.gdst");
    when(path.toURI()).thenReturn("default://test/dtable.gdst");
    final GuidedDecisionTableEditorGraphModel model = new GuidedDecisionTableEditorGraphModel();
    model.getEntries().add(new GuidedDecisionTableEditorGraphModel.GuidedDecisionTableGraphEntry(path, path));
    when(dtableGraphService.load(any(Path.class))).thenReturn(model);
    helper.postProcess(path);
    verify(helper, times(1)).updateGraphReferences(any(Path.class), any(Path.class));
    final ArgumentCaptor<org.uberfire.java.nio.file.Path> dtGraphPathCaptor = ArgumentCaptor.forClass(org.uberfire.java.nio.file.Path.class);
    final ArgumentCaptor<String> modelXmlCaptor = ArgumentCaptor.forClass(String.class);
    verify(ioService, times(1)).write(dtGraphPathCaptor.capture(), modelXmlCaptor.capture(), any(CommentedOption.class));
    final org.uberfire.java.nio.file.Path dtGraphPath2 = dtGraphPathCaptor.getValue();
    assertEquals(dtGraphPath.toUri().getPath(), dtGraphPath2.toUri().getPath());
    final String modelXml = modelXmlCaptor.getValue();
    final GuidedDecisionTableEditorGraphModel newModel = GuidedDTGraphXMLPersistence.getInstance().unmarshal(modelXml);
    assertEquals(0, newModel.getEntries().size());
}
Also used : Path(org.uberfire.backend.vfs.Path) GuidedDecisionTableEditorGraphModel(org.drools.workbench.screens.guided.dtable.model.GuidedDecisionTableEditorGraphModel) URI(java.net.URI) CommentedOption(org.uberfire.java.nio.base.options.CommentedOption) 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