use of org.talend.dataprep.api.folder.Folder in project data-prep by Talend.
the class AbstractFolderTest method parentIdShouldBeNullForHome.
@Test
public void parentIdShouldBeNullForHome() throws Exception {
// when
final Folder home = getFolderRepository().getHome();
// then
assertNull(home.getParentId());
}
use of org.talend.dataprep.api.folder.Folder in project data-prep by Talend.
the class AbstractFolderTest method create_two_children_little_children_then_remove.
/**
* this test create a hierarchy then delete part of it doing some assert on list, size then delete part of it
* asserting the deletion
*/
@Test
public void create_two_children_little_children_then_remove() throws Exception {
// - foo
// - beer
// +- bar
long sizeBefore = getFolderRepository().size();
Folder foo = getFolderRepository().addFolder(homeFolderId, "foo");
Folder beer = getFolderRepository().addFolder(homeFolderId, "beer");
Folder bar = getFolderRepository().addFolder(beer.getId(), "bar");
assertChildrenSize(homeFolderId, 2);
// testing child of /bar
List<Folder> folders = getChildren(beer.getId());
assertThat(folders).isNotNull().isNotEmpty().hasSize(1);
assertThat(StringUtils.strip(folders.get(0).getPath(), "/")).isEqualToIgnoringCase("beer/bar");
assertThat(folders.get(0).getName()).isEqualToIgnoringCase("bar");
getFolderRepository().removeFolder(bar.getId());
// testing child of /beer after removing the first child
assertChildrenSize(beer.getId(), 0);
// testing the whole size
long sizeAfter = getFolderRepository().size();
assertThat(sizeAfter).isEqualTo(2);
getFolderRepository().removeFolder(foo.getId());
getFolderRepository().removeFolder(beer.getId());
sizeAfter = getFolderRepository().size();
assertThat(sizeAfter).isEqualTo(sizeBefore);
assertChildrenSize(homeFolderId, 0);
}
use of org.talend.dataprep.api.folder.Folder in project data-prep by Talend.
the class AbstractFolderTest method shouldLocateEntry.
@Test
public void shouldLocateEntry() throws Exception {
// given (root & 2 entries)
final Folder root = getFolderRepository().getHome();
final FolderEntry littleCreatures = new FolderEntry(DATASET, "littleCreatures");
getFolderRepository().addFolderEntry(littleCreatures, root.getId());
final FolderEntry bordeaux = new FolderEntry(PREPARATION, "bordeaux");
getFolderRepository().addFolderEntry(bordeaux, root.getId());
// given (foo & 2 entries)
final Folder foo = getFolderRepository().addFolder(homeFolderId, "foo");
final FolderEntry cars = new FolderEntry(DATASET, "cars");
getFolderRepository().addFolderEntry(cars, foo.getId());
final FolderEntry boats = new FolderEntry(PREPARATION, "boats");
getFolderRepository().addFolderEntry(boats, foo.getId());
// add some noise
getFolderRepository().addFolder(foo.getId(), "bar");
getFolderRepository().addFolder(homeFolderId, "hello");
// then
assertNull(getFolderRepository().locateEntry(pathToId("not to be found"), PREPARATION));
assertEquals(root.getId(), getFolderRepository().locateEntry(bordeaux.getContentId(), bordeaux.getContentType()).getId());
assertEquals(root.getId(), getFolderRepository().locateEntry(littleCreatures.getContentId(), littleCreatures.getContentType()).getId());
assertEquals(foo.getId(), getFolderRepository().locateEntry(cars.getContentId(), cars.getContentType()).getId());
assertEquals(foo.getId(), getFolderRepository().locateEntry(boats.getContentId(), boats.getContentType()).getId());
}
use of org.talend.dataprep.api.folder.Folder in project data-prep by Talend.
the class AbstractFolderTest method shouldAddMultipleInOneCallFolders.
@Test
public void shouldAddMultipleInOneCallFolders() throws Exception {
// given
assertEquals(0, getFolderRepository().size());
final Folder marketing = getFolderRepository().addFolder(homeFolderId, "marketing");
// when
final Folder q1 = getFolderRepository().addFolder(marketing.getId(), "2016/q1");
// then
assertNotNull(q1);
assertEquals(3, getFolderRepository().size());
final Folder folder2016 = getFolderRepository().getFolderById(q1.getParentId());
assertEquals("2016", folder2016.getName());
assertEquals(marketing.getId(), folder2016.getParentId());
}
use of org.talend.dataprep.api.folder.Folder in project data-prep by Talend.
the class APIPreparationConversions method toEnrichedPreparation.
private EnrichedPreparation toEnrichedPreparation(PreparationMessage preparationMessage, EnrichedPreparation enrichedPreparation, ApplicationContext applicationContext) {
final SecurityProxy securityProxy = applicationContext.getBean(SecurityProxy.class);
// Add related dataset information
if (preparationMessage.getDataSetId() == null) {
return enrichedPreparation;
} else {
// get the dataset metadata
try {
// because dataset are not shared
securityProxy.asTechnicalUser();
final DataSetGetMetadata bean = applicationContext.getBean(DataSetGetMetadata.class, preparationMessage.getDataSetId());
final DataSetMetadata dataSetMetadata = bean.execute();
enrichedPreparation.setSummary(new EnrichedPreparation.DataSetMetadataSummary(dataSetMetadata));
} catch (Exception e) {
LOGGER.debug("error reading dataset metadata {} : {}", enrichedPreparation.getId(), e);
return enrichedPreparation;
} finally {
securityProxy.releaseIdentity();
}
}
// Add step ids
LinkedList<String> collected = new LinkedList<>();
preparationMessage.getSteps().stream().map(Step::getId).forEach(s -> {
if (s != null && (collected.isEmpty() || !collected.getLast().equals(s))) {
collected.add(s);
}
});
enrichedPreparation.setSteps(collected);
// Add folder information
final LocatePreparation command = applicationContext.getBean(LocatePreparation.class, enrichedPreparation.getId());
final Folder folder = command.execute();
enrichedPreparation.setFolder(folder);
return enrichedPreparation;
}
Aggregations