private static ScriptResult<Network> loadNetworkFromImportedCase(ImportedCase importedCase) { LOGGER.info("Loading network of project case {}", importedCase.getId()); Importer importer = importedCase.getImporter(); ReadOnlyDataSource dataSource = importedCase.getDataSource(); Properties parameters = importedCase.getParameters(); Network network = importer.importData(dataSource, parameters); return ScriptResult.of(network); }
@Override public ImportedCase createProjectFile(ProjectFileCreationContext context) { return new ImportedCase(context, importersLoader); }
@Override public String queryNetwork(ScriptType scriptType, String scriptContent) { Objects.requireNonNull(scriptType); Objects.requireNonNull(scriptContent); return findService(NetworkCacheService.class).queryNetwork(this, scriptType, scriptContent); }
.build(); assertNotNull(importedCase); assertFalse(importedCase.isFolder()); assertNotNull(importedCase.getNetwork()); assertTrue(importedCase.getDependencies().isEmpty()); assertEquals("[\"s1\"]", importedCase.queryNetwork(ScriptType.GROOVY, "network.substations.collect { it.id }")); assertTrue(projectNode instanceof ImportedCase); ImportedCase importedCase2 = (ImportedCase) projectNode; assertEquals(TestImporter.FORMAT, importedCase2.getImporter().getFormat()); assertEquals(2, importedCase2.getParameters().size()); assertEquals("true", importedCase2.getParameters().getProperty("param1"));
@Override public Node getGraphic(Object file) { if (file instanceof Case) { Case aCase = (Case) file; return createCaseGlyph(aCase.getImporter()); } else if (file instanceof ImportedCase) { ImportedCase importedCase = (ImportedCase) file; return createCaseGlyph(importedCase.getImporter()); } else if (file instanceof VirtualCase) { return createIidmGlyph() .stack(Glyph.createAwesomeFont('\uf14b') .color("limegreen") .size("0.9em")); } else if (file instanceof ModificationScript) { return Glyph.createAwesomeFont('\uf0f6').size("1.2em"); } return null; } }
assertEquals(importedCase.getId(), runner.getCase().get().getId()); assertTrue(runner.getContingencyStore().isPresent()); assertEquals(contingencyStore.getId(), runner.getContingencyStore().get().getId()); runner.setContingencyStore(contingencyStore2); assertTrue(runner.getCase().isPresent()); assertEquals(importedCase2.getId(), runner.getCase().get().getId()); assertTrue(runner.getContingencyStore().isPresent()); assertEquals(contingencyStore2.getId(), runner.getContingencyStore().get().getId());
@Test public void testFile() { Folder root = afs.getRootFolder(); // create project Project project = root.createProject("project"); assertNotNull(project); // create project folder ProjectFolder folder = project.getRootFolder().createFolder("folder"); assertTrue(folder.getChildren().isEmpty()); ImportedCase importedCase = folder.fileBuilder(ImportedCaseBuilder.class) .withFile(fileSystem.getPath("/work/network.tst")) .withName("test") .build(); assertNotNull(importedCase); assertEquals("test", importedCase.getName()); ImportedCase importedCase2 = folder.fileBuilder(ImportedCaseBuilder.class) .withFile(fileSystem.getPath("/work/network.tst")) .build(); assertNotNull(importedCase2); assertEquals("network", importedCase2.getName()); }
assertTrue(virtualCase.getScript().isPresent()); assertEquals(2, virtualCase.getDependencies().size()); assertEquals(1, importedCase.getBackwardDependencies().size()); assertEquals(1, script.getBackwardDependencies().size()); assertNotNull(virtualCase.getNetwork()); assertTrue(importedCase.getBackwardDependencies().isEmpty()); assertTrue(script.getBackwardDependencies().isEmpty());
@Test public void testNetwork() { Folder root = afs.getRootFolder(); // create project Project project = root.createProject("project"); assertNotNull(project); // create project folder ProjectFolder folder = project.getRootFolder().createFolder("folder"); assertTrue(folder.getChildren().isEmpty()); Network network = NetworkFactory.create("NetworkID", "scripting"); ImportedCase importedCase1 = folder.fileBuilder(ImportedCaseBuilder.class) .withName("test") .withNetwork(network) .build(); assertNotNull(importedCase1); assertEquals("test", importedCase1.getName()); ImportedCase importedCase2 = folder.fileBuilder(ImportedCaseBuilder.class) .withNetwork(network) .build(); assertNotNull(importedCase2); assertEquals("NetworkID", importedCase2.getName()); } }
@Override public void invalidateNetworkCache() { findService(NetworkCacheService.class).invalidateCache(this); }
return new ImportedCase(new ProjectFileCreationContext(info, context.getStorage(), context.getProject()), importersLoader);
@Override public Network getNetwork() { return findService(NetworkCacheService.class).getNetwork(this); }