public Collection<HybridInstance> listHybridInstances() { try (AutoLock l = lock.lockForRead()) { return hybridMap.values(); } }
public List<KafkaConfig> listAllKafkaConfigs() { try (AutoLock l = lock.lockForRead()) { return new ArrayList(kafkaMap.values()); } }
public List<ExternalFilterDesc> listAllExternalFilters() { try (AutoLock lock = extFilterMapLock.lockForRead()) { return Lists.newArrayList(extFilterMap.values()); } }
public ProjectInstance getProject(String projectName) { // Null check is needed for ConcurrentMap does not supporting .get(null) if (projectName == null) return null; try (AutoLock lock = prjMapLock.lockForRead()) { return projectMap.get(projectName); } }
public DataModelDesc getDataModelDesc(String name) { try (AutoLock lock = modelMapLock.lockForRead()) { return dataModelDescMap.get(name); } }
public List<DataModelDesc> getModels() { try (AutoLock lock = modelMapLock.lockForRead()) { return new ArrayList<>(dataModelDescMap.values()); } }
public ManagedUser get(String name) { try (AutoReadWriteLock.AutoLock l = lock.lockForRead()) { return userMap.get(name); } }
public List<CubeDesc> listAllDesc() { try (AutoLock lock = descMapLock.lockForRead()) { return new ArrayList<CubeDesc>(cubeDescMap.values()); } }
public ExternalFilterDesc getExtFilterDesc(String filterTableName) { try (AutoLock lock = extFilterMapLock.lockForRead()) { ExternalFilterDesc result = extFilterMap.get(filterTableName); return result; } }
public List<DataModelDesc> listDataModels() { try (AutoLock lock = modelMapLock.lockForRead()) { return Lists.newArrayList(dataModelDescMap.values()); } }
public KafkaConfig getKafkaConfig(String name) { try (AutoLock l = lock.lockForRead()) { return kafkaMap.get(name); } }
public boolean exists(String username) { try (AutoReadWriteLock.AutoLock l = lock.lockForRead()) { return userMap.containsKey(username); } } }
public CubeDesc getCubeDesc(String name) { try (AutoLock lock = descMapLock.lockForRead()) { return cubeDescMap.get(name); } }
public List<ProjectInstance> listAllProjects() { try (AutoLock lock = prjMapLock.lockForRead()) { return new ArrayList<ProjectInstance>(projectMap.values()); } }
public StreamingConfig getStreamingConfig(String name) { try (AutoLock l = lock.lockForRead()) { return streamingMap.get(name); } }
public ProjectInstance getProjectOfModel(String model) { try (AutoLock lock = prjMapLock.lockForRead()) { for (ProjectInstance prj : projectMap.values()) { if (prj.getModels().contains(model)) return prj; } throw new IllegalStateException("No project found for model " + model); } }
public List<String> getModelsUsingTable(TableDesc table, String project) throws IOException { try (AutoLock lock = modelMapLock.lockForRead()) { List<String> models = new ArrayList<>(); for (DataModelDesc modelDesc : getModels(project)) { if (modelDesc.containsTable(table)) models.add(modelDesc.getName()); } return models; } }
public TempStatementEntity getTempStatEntity(String sessionId, String statementId) { try (AutoLock l = lock.lockForRead()) { return tmpStatMap.get(TempStatementEntity.resourceName(sessionId, statementId)); } }
public boolean isTableInAnyModel(TableDesc table) { try (AutoLock lock = modelMapLock.lockForRead()) { for (DataModelDesc modelDesc : getModels()) { if (modelDesc.containsTable(table)) return true; } return false; } }
public TableACL getTableACLByCache(String project) { try (AutoLock l = lock.lockForRead()) { TableACL tableACL = tableACLMap.get(project); if (tableACL == null) { return newTableACL(project); } return tableACL; } }