public ProjectInstance getProjectInstance() { return ProjectManager.getInstance(config).getProject(projectName); } }
@RequestMapping(value = "/{projectName}", method = { RequestMethod.DELETE }, produces = { "application/json" }) @ResponseBody public void deleteProject(@PathVariable String projectName) { try { ProjectInstance project = projectService.getProjectManager().getProject(projectName); projectService.deleteProject(projectName, project); } catch (Exception e) { logger.error(e.getLocalizedMessage(), e); throw new InternalErrorException("Failed to delete project. " + " Caused by: " + e.getMessage(), e); } }
@Override public boolean apply(CubingJob executable) { if (null == projectName || null == getProjectManager().getProject(projectName)) { return true; } else { return projectName.equalsIgnoreCase(executable.getProjectName()); } } }, new Predicate<CubingJob>() {
@Override public boolean apply(CubingJob executable) { if (null == projectName || null == getProjectManager().getProject(projectName)) { return true; } else { return projectName.equalsIgnoreCase(executable.getProjectName()); } } }, new Predicate<CubingJob>() {
@Override public boolean apply(CheckpointExecutable executable) { if (null == projectName || null == getProjectManager().getProject(projectName)) { return true; } else { return projectName.equalsIgnoreCase(executable.getProjectName()); } } }, new Predicate<CheckpointExecutable>() {
@Override public boolean apply(CheckpointExecutable executable) { if (null == projectName || null == getProjectManager().getProject(projectName)) { return true; } else { return projectName.equalsIgnoreCase(executable.getProjectName()); } } }, new Predicate<CheckpointExecutable>() {
/** * change the last project modify time * @param projectName * @throws IOException */ public void touchProject(String projectName) throws IOException { try (AutoLock lock = prjMapLock.lockForWrite()) { ProjectInstance projectInstance = getProject(projectName); save(projectInstance); } }
@Override public KylinConfig getConfig() { if (project == null) { return config; } else { ProjectInstance projInstance = ProjectManager.getInstance(config).getProject(project); return projInstance == null ? config : projInstance.getConfig(); } }
public static String createSignature(KylinConfig config, SQLResponse sqlResponse, String projectName) { ProjectInstance project = ProjectManager.getInstance(config).getProject(projectName); Preconditions.checkNotNull(project); SignatureCalculator signatureCalculator; try { Class signatureClass = getSignatureClass(project.getConfig()); signatureCalculator = (SignatureCalculator) signatureClass.getConstructor().newInstance(); } catch (Exception e) { logger.warn("Will use default signature since fail to construct signature due to " + e); signatureCalculator = new FactTableRealizationSetCalculator(); } return signatureCalculator.calculateSignature(config, sqlResponse, project); }
public ProjectInstance createProject(String projectName, String owner, String description, LinkedHashMap<String, String> overrideProps) throws IOException { try (AutoLock lock = prjMapLock.lockForWrite()) { logger.info("Creating project " + projectName); ProjectInstance currentProject = getProject(projectName); if (currentProject == null) { currentProject = ProjectInstance.create(projectName, owner, description, overrideProps, null, null); } else { throw new IllegalStateException("The project named " + projectName + "already exists"); } checkOverrideProps(currentProject); return save(currentProject); } }
public ISource getProjectSource(String projectName) { ProjectInstance projectInstance = ProjectManager.getInstance(systemConfig).getProject(projectName); if (projectInstance != null) return getCachedSource(projectInstance); else return getDefaultSource(); }
public ProjectInstance addModelToProject(String modelName, String newProjectName) throws IOException { try (AutoLock lock = prjMapLock.lockForWrite()) { removeModelFromProjects(modelName); ProjectInstance prj = getProject(newProjectName); if (prj == null) { throw new IllegalArgumentException("Project " + newProjectName + " does not exist."); } prj.addModel(modelName); return save(prj); } }
public void removeExtFilterFromProject(String filterName, String projectName) throws IOException { try (AutoLock lock = prjMapLock.lockForWrite()) { TableMetadataManager metaMgr = getTableManager(); ProjectInstance projectInstance = getProject(projectName); ExternalFilterDesc filter = metaMgr.getExtFilterDesc(filterName); if (filter == null) { throw new IllegalStateException("Cannot find external filter '" + filterName + "' in metadata manager"); } projectInstance.removeExtFilter(filterName); save(projectInstance); } }
public static boolean exposeMore(String project) { return ProjectManager.getInstance(KylinConfig.getInstanceFromEnv()).getProject(project).getConfig() .isPushDownEnabled(); }
private List<Sid> getAllSids(String project) { List<Sid> allSids = new ArrayList<>(); ProjectInstance prj = projectService.getProjectManager().getProject(project); AclEntity ae = accessService.getAclEntity("ProjectInstance", prj.getUuid()); Acl acl = accessService.getAcl(ae); if (acl != null && acl.getEntries() != null) { for (AccessControlEntry ace : acl.getEntries()) { allSids.add(ace.getSid()); } } return allSids; }
public void removeTableDescFromProject(String tableId, String projectName) throws IOException { try (AutoLock lock = prjMapLock.lockForWrite()) { TableMetadataManager metaMgr = getTableManager(); ProjectInstance projectInstance = getProject(projectName); TableDesc table = metaMgr.getTableDesc(tableId, projectName); if (table == null) { throw new IllegalStateException("Cannot find table '" + tableId + "' in metadata manager"); } projectInstance.removeTable(table.getIdentity()); save(projectInstance); } }
public QueryRequestLimits(String project) { this.project = project; ProjectManager mgr = ProjectManager.getInstance(KylinConfig.getInstanceFromEnv()); ProjectInstance prj = mgr.getProject(project); this.maxConcurrentQuery = prj.getConfig().getQueryConcurrentRunningThresholdForProject(); boolean ok = openQueryRequest(project, maxConcurrentQuery); if (!ok) { Message msg = MsgPicker.getMsg(); logger.warn("Directly return exception as too many concurrent query requests for project: {}", project); throw new BadRequestException(msg.getQUERY_TOO_MANY_RUNNING()); } }
@Override public void onProjectSchemaChange(Broadcaster broadcaster, String project) throws IOException { //clean up the current project's table desc TableMetadataManager.getInstance(config).resetProjectSpecificTableDesc(project); try (AutoLock lock = modelMapLock.lockForWrite()) { for (String model : ProjectManager.getInstance(config).getProject(project).getModels()) { crud.reloadQuietly(model); } } }
@Test public void testHappyIngest() { String srcPath = Thread.currentThread().getContextClassLoader().getResource("cloned_cube_and_model.zip").getPath(); CubeMetaIngester.main(new String[] { "-project", "default", "-srcPath", srcPath }); ProjectInstance project = ProjectManager.getInstance(KylinConfig.getInstanceFromEnv()).getProject("default"); Assert.assertEquals(1, Collections.frequency(project.getTables(), "DEFAULT.TEST_KYLIN_FACT")); Assert.assertTrue(project.getModels().contains("cloned_model")); Assert.assertTrue(project.getRealizationEntries().contains(RealizationEntry.create(RealizationType.CUBE, "cloned_cube"))); getTestConfig().clearManagers(); CubeInstance instance = CubeManager.getInstance(KylinConfig.getInstanceFromEnv()).getCube("cloned_cube"); Assert.assertTrue(instance != null); }
@Test public void testHappyIngest2() { String srcPath = Thread.currentThread().getContextClassLoader().getResource("benchmark_meta.zip").getPath(); CubeMetaIngester.main(new String[] { "-project", "default", "-srcPath", srcPath, "-overwriteTables", "true" }); ProjectInstance project = ProjectManager.getInstance(KylinConfig.getInstanceFromEnv()).getProject("default"); Assert.assertEquals(1, Collections.frequency(project.getTables(), "SSB.CUSTOMER")); Assert.assertTrue(project.getModels().contains("benchmark_model")); Assert.assertTrue(project.getRealizationEntries().contains(RealizationEntry.create(RealizationType.CUBE, "benchmark_cube"))); getTestConfig().clearManagers(); CubeInstance instance = CubeManager.getInstance(KylinConfig.getInstanceFromEnv()).getCube("benchmark_cube"); Assert.assertTrue(instance != null); }