@Override public HomeConfig apply(NameSpaceContainer input) { return input.getHome(); } })
@Override public HomeConfig getHome(NamespaceKey homePath) throws NamespaceException { return getEntity(homePath, HOME).getHome(); }
result = Optional.of(entity.getHome()); break;
public static Optional<CatalogItem> fromNamespaceContainer(NameSpaceContainer container, CollaborationTag tags) { Optional<CatalogItem> item = Optional.absent(); switch (container.getType()) { case SOURCE: { item = Optional.of(CatalogItem.fromSourceConfig(container.getSource(), tags)); break; } case SPACE: { item = Optional.of(CatalogItem.fromSpaceConfig(container.getSpace(), tags)); break; } case DATASET: { item = Optional.of(CatalogItem.fromDatasetConfig(container.getDataset(), tags)); break; } case HOME: { item = Optional.of(CatalogItem.fromHomeConfig(container.getHome())); break; } case FOLDER: { item = Optional.of(CatalogItem.fromFolderConfig(container.getFolder())); break; } default: throw new UnsupportedOperationException(String.format("Catalog item of type [%s] can not be created", container.getType())); } return item; }
public static String getVersion(NamespaceKey namespaceKey, NamespaceService namespaceService) throws NamespaceException { NameSpaceContainer container = namespaceService.getEntities(Arrays.asList(namespaceKey)).get(0); switch (container.getType()) { case SOURCE: return container.getSource().getTag(); case SPACE: return container.getSpace().getTag(); case HOME: return container.getHome().getTag(); case FOLDER: return container.getFolder().getTag(); case DATASET: return container.getDataset().getTag(); default: throw new RuntimeException("Invalid container type"); } } }
@Override public String getTag(NameSpaceContainer value) { switch (value.getType()) { case DATASET: return value.getDataset().getTag(); case FOLDER: return value.getFolder().getTag(); case HOME: return value.getHome().getTag(); case SOURCE: return value.getSource().getTag(); case SPACE: return value.getSpace().getTag(); default: throw new UnsupportedOperationException("Unknown type: " + value.getType()); } }
@Override public Long getVersion(NameSpaceContainer value) { switch (value.getType()) { case DATASET: return value.getDataset().getVersion(); case FOLDER: return value.getFolder().getVersion(); case HOME: return value.getHome().getVersion(); case SOURCE: return value.getSource().getVersion(); case SPACE: return value.getSpace().getVersion(); default: throw new UnsupportedOperationException("Unknown type: " + value.getType()); } }
@Override public void setVersion(NameSpaceContainer value, Long version) { switch (value.getType()) { case DATASET: value.getDataset().setVersion(version); break; case FOLDER: value.getFolder().setVersion(version); break; case HOME: value.getHome().setVersion(version); break; case SOURCE: value.getSource().setVersion(version); break; case SPACE: value.getSpace().setVersion(version); break; default: throw new UnsupportedOperationException("Unknown type: " + value.getType()); } }
@Override public void setTag(NameSpaceContainer value, String version) { switch (value.getType()) { case DATASET: value.getDataset().setTag(version); break; case FOLDER: value.getFolder().setTag(version); break; case HOME: value.getHome().setTag(version); break; case SOURCE: value.getSource().setTag(version); break; case SPACE: value.getSpace().setTag(version); break; default: throw new UnsupportedOperationException("Unknown type: " + value.getType()); } }
/** helper method that returns the id of the entity in given container */ public static String getId(NameSpaceContainer container) { EntityId entityId; switch (container.getType()) { case SOURCE: entityId = container.getSource().getId(); break; case SPACE: entityId = container.getSpace().getId(); break; case HOME: entityId = container.getHome().getId(); break; case FOLDER: entityId = container.getFolder().getId(); break; case DATASET: entityId = container.getDataset().getId(); break; default: throw new RuntimeException("Invalid container type"); } return entityId != null ? entityId.getId() : null; }
/** helper method that sets the given id in given container */ static void setId(NameSpaceContainer container, String id) { switch (container.getType()) { case SOURCE: container.getSource().setId(new EntityId(id)); return; case SPACE: container.getSpace().setId(new EntityId(id)); return; case HOME: container.getHome().setId(new EntityId(id)); return; case FOLDER: container.getFolder().setId(new EntityId(id)); return; case DATASET: container.getDataset().setId(new EntityId(id)); return; default: throw new RuntimeException("Invalid container type"); } }
HomeConfig homeConfig = container.getHome(); writer.write(NamespaceIndexKeys.HOME_ID, homeConfig.getId().getId()); break;