@Override @Nullable public NamespaceMeta delete(final NamespaceId id) { Preconditions.checkArgument(id != null, "Namespace id cannot be null."); return Transactionals.execute(transactional, context -> { NamespaceMDS mds = getNamespaceMDS(context); NamespaceMeta existing = mds.get(id); if (existing != null) { mds.delete(id); } return existing; }); }
/** * List all namespaces * * @return list of all namespace metas */ public List<NamespaceMeta> list() { return list(getNamespaceKey(null), NamespaceMeta.class); }
/** * Get the namespace mds */ public static NamespaceMDS getNamespaceMDS(DatasetContext datasetContext, DatasetFramework dsFramework) { try { Table table = DatasetsUtil.getOrCreateDataset(datasetContext, dsFramework, APP_META_INSTANCE_ID, Table.class.getName(), DatasetProperties.EMPTY); return new NamespaceMDS(table); } catch (DatasetManagementException | IOException e) { throw new RuntimeException(e); } }
/** * Delete the namespace from the dataset * * @param id id of the namespace */ public void delete(NamespaceId id) { deleteAll(getNamespaceKey(id.getEntityName())); }
/** * Create the namespace using the namespace meta * * @param metadata the namespace metadata for the namespace */ public void create(NamespaceMeta metadata) { write(getNamespaceKey(metadata.getName()), metadata); }
@Override public void update(final NamespaceMeta metadata) { Preconditions.checkArgument(metadata != null, "Namespace metadata cannot be null."); Transactionals.execute(transactional, context -> { NamespaceMDS mds = getNamespaceMDS(context); NamespaceMeta existing = mds.get(metadata.getNamespaceId()); if (existing != null) { mds.create(metadata); } }); }
switch (entityId.getEntityType()) { case INSTANCE: for (NamespaceMeta meta : namespaceMDS.list()) { collectProfileMetadata(meta.getNamespaceId(), message, updates); NamespaceId namespaceId = (NamespaceId) entityId; if (namespaceMDS.get(namespaceId) == null) { LOG.debug("Namespace {} is not found, so the profile metadata of programs or schedules in it will not get " + "updated. Ignoring the message {}", namespaceId, message);
@Override @Nullable public NamespaceMeta get(final NamespaceId id) { Preconditions.checkArgument(id != null, "Namespace id cannot be null."); return Transactionals.execute(transactional, context -> { return getNamespaceMDS(context).get(id); }); }
/** * Get the namespace meta using the namespace id * * @param id id of the namespace * @return the namespace meta, null if not found */ @Nullable public NamespaceMeta get(NamespaceId id) { return getFirst(getNamespaceKey(id.getEntityName()), NamespaceMeta.class); }
@Override public List<NamespaceMeta> list() { return Transactionals.execute(transactional, context -> { return getNamespaceMDS(context).list(); }); } }
public ProfileMetadataMessageProcessor(CConfiguration cConf, DatasetContext datasetContext, DatasetFramework datasetFramework, MetadataStore metadataStore) { namespaceMDS = NamespaceMDS.getNamespaceMDS(datasetContext, datasetFramework); appMetadataStore = AppMetadataStore.create(cConf, datasetContext, datasetFramework); scheduleDataset = Schedulers.getScheduleStore(datasetContext, datasetFramework); preferencesDataset = PreferencesDataset.get(datasetContext, datasetFramework); this.metadataStore = metadataStore; }
@Override public void update(final NamespaceMeta metadata) { Preconditions.checkArgument(metadata != null, "Namespace metadata cannot be null."); Transactionals.execute(transactional, context -> { NamespaceMDS mds = getNamespaceMDS(context); NamespaceMeta existing = mds.get(metadata.getNamespaceId()); if (existing != null) { mds.create(metadata); } }); }
private void updateProfileMetadata(EntityId entityId, MetadataMessage message) { switch (entityId.getEntityType()) { case INSTANCE: for (NamespaceMeta meta : namespaceMDS.list()) { updateProfileMetadata(meta.getNamespaceId(), message); NamespaceId namespaceId = (NamespaceId) entityId; if (namespaceMDS.get(namespaceId) == null) { LOG.debug("Namespace {} is not found, so the profile metadata of programs or schedules in it will not get " + "updated. Ignoring the message {}", namespaceId, message);
/** * Delete the namespace from the dataset * * @param id id of the namespace */ public void delete(NamespaceId id) { deleteAll(getNamespaceKey(id.getEntityName())); }
@Override @Nullable public NamespaceMeta get(final NamespaceId id) { Preconditions.checkArgument(id != null, "Namespace id cannot be null."); return Transactionals.execute(transactional, context -> { return getNamespaceMDS(context).get(id); }); }
/** * Create the namespace using the namespace meta * * @param metadata the namespace metadata for the namespace */ public void create(NamespaceMeta metadata) { write(getNamespaceKey(metadata.getName()), metadata); }
/** * Get the namespace meta using the namespace id * * @param id id of the namespace * @return the namespace meta, null if not found */ @Nullable public NamespaceMeta get(NamespaceId id) { return getFirst(getNamespaceKey(id.getEntityName()), NamespaceMeta.class); }
@Override public List<NamespaceMeta> list() { return Transactionals.execute(transactional, context -> { return getNamespaceMDS(context).list(); }); } }
public ProfileMetadataMessageProcessor(CConfiguration cConf, DatasetContext datasetContext, DatasetFramework datasetFramework) { namespaceMDS = NamespaceMDS.getNamespaceMDS(datasetContext, datasetFramework); appMetadataStore = AppMetadataStore.create(cConf, datasetContext, datasetFramework); scheduleDataset = Schedulers.getScheduleStore(datasetContext, datasetFramework); preferencesDataset = PreferencesDataset.get(datasetContext, datasetFramework); metadataDataset = DefaultMetadataStore.getMetadataDataset(datasetContext, datasetFramework, MetadataScope.SYSTEM); }
@Override @Nullable public NamespaceMeta create(final NamespaceMeta metadata) { Preconditions.checkArgument(metadata != null, "Namespace metadata cannot be null."); return Transactionals.execute(transactional, context -> { NamespaceMDS mds = getNamespaceMDS(context); NamespaceMeta existing = mds.get(metadata.getNamespaceId()); if (existing != null) { return existing; } mds.create(metadata); return null; }); }