@Deprecated private String getOriReleaseReportLocation(ReportDesignModel model) { if (model == null) { return null; } String name = model.getName(); String productLine = ContextManager.getProductLine(); try { String[] listFile = fileService.ls(this.getReleaseReportDir()); for (String file : listFile) { if (file.startsWith(model.getId())) { return productLine + File.separator + reportBaseDir + File.separator + "release" + File.separator + file; } } } catch (FileServiceException e) { logger.error(e.getMessage(), e); } return productLine + File.separator + reportBaseDir + File.separator + "release" + File.separator + model.getId() + Constants.FILE_NAME_SEPERATOR + name; }
/** {@inheritDoc} */ @Override public boolean isNameExist(String name) { if (name == null) { return false; } String[] listFile = null; try { listFile = fileService.ls(this.getDevReportDir()); } catch (FileServiceException e) { logger.debug(e.getMessage(), e); } if (listFile == null || listFile.length == 0) { return false; } for (String file : listFile) { if (file.contains(".")) { continue; } String[] tmpArray = file.split(FILE_SPLIT_REG); if (name.equals(tmpArray[0]) || name.equals(tmpArray[1]) || String.valueOf(name.hashCode()).equals(tmpArray[1])) { return true; } } return false; }
/** * 升级方法 * * @param model * @return String */ @Deprecated private String generateOriDevReportLocation(ReportDesignModel model) { if (model == null) { return null; } StringBuilder builder = new StringBuilder(); builder.append(getDevReportDir()); builder.append(File.separator); String name = null; try { String[] listFile = fileService.ls(this.getDevReportDir()); for (String file : listFile) { if (file.startsWith(model.getId())) { name = file; builder.append(name); break; } } } catch (FileServiceException e) { logger.error(e.getMessage(), e); } if (name == null) { builder.append(model.getId()); builder.append(Constants.FILE_NAME_SEPERATOR); builder.append(name); builder.append(Constants.FILE_NAME_SEPERATOR); builder.append(model.getDsId()); } return builder.toString(); }
/** {@inheritDoc} */ @Override public ReportDesignModel[] queryAllModels(boolean released) { try { String[] listFile = null; if (released) { listFile = fileService.ls(this.getReleaseReportDir()); } else { listFile = fileService.ls(this.getDevReportDir()); } if (listFile == null || listFile.length == 0) { return new ReportDesignModel[0]; } ReportDesignModel[] modelList = buildResult(listFile, released); List<ReportDesignModel> reportList = Arrays.asList(modelList); Collections.sort( reportList, new Comparator<ReportDesignModel>() { @Override public int compare(ReportDesignModel o1, ReportDesignModel o2) { if (o1 == null || StringUtils.isEmpty(o1.getName())) { return -1; } if (o2 == null) { return 0; } return o1.getName().compareTo(o2.getName()); } }); return reportList.toArray(new ReportDesignModel[0]); } catch (FileServiceException e) { logger.error(e.getMessage(), e); } return new ReportDesignModel[0]; }
/** {@inheritDoc} */ @Override public ReportDesignModel getModelByIdOrName(String idOrName, boolean isRelease) { String baseDir = null; if (!isRelease) { baseDir = getDevReportDir(); } else { baseDir = getReleaseReportDir(); } String[] modelFileList = null; try { modelFileList = fileService.ls(baseDir); } catch (FileServiceException e) { logger.debug(e.getMessage(), e); } if (modelFileList == null || modelFileList.length == 0) { logger.warn("can not get report model define in directory: " + baseDir); return null; } try { for (String modelFile : modelFileList) { if (modelFile.contains(".")) { continue; } String[] tmpArray = modelFile.split(FILE_SPLIT_REG); if (idOrName.equals(tmpArray[0]) || tmpArray[1].equals(idOrName) || String.valueOf(idOrName.hashCode()).equals(tmpArray[1])) { byte[] content = fileService.read(baseDir + File.separator + modelFile); ReportDesignModel model = (ReportDesignModel) SerializationUtils.deserialize(content); return model; } } } catch (Exception e) { logger.error(e.getMessage(), e); } return null; }
/** {@inheritDoc} */ @Override public List<String> lsReportWithDsId(String id) { String[] modelFileList = null; try { modelFileList = fileService.ls(getDevReportDir()); } catch (FileServiceException e) { logger.debug(e.getMessage(), e); return Lists.newArrayList(); } if (modelFileList == null || modelFileList.length == 0) { return Lists.newArrayList(); } List<String> rs = Lists.newArrayList(); for (String str : modelFileList) { if (str.contains(id)) { rs.add( str.substring( str.indexOf(Constants.FILE_NAME_SEPERATOR), str.lastIndexOf(Constants.FILE_NAME_SEPERATOR)) .replace(Constants.FILE_NAME_SEPERATOR, "")); } } return rs; }
public boolean isNameExist(String name, String id) { if (name == null) { return false; } String[] listFile = null; try { listFile = fileService.ls(this.getDevReportDir()); } catch (FileServiceException e) { logger.debug(e.getMessage(), e); } if (listFile == null || listFile.length == 0) { return false; } String idTarget = id + Constants.FILE_NAME_SEPERATOR; String nameTarget = Constants.FILE_NAME_SEPERATOR + name.hashCode() + Constants.FILE_NAME_SEPERATOR; for (String file : listFile) { // 名称相同,id不相同 if (!file.startsWith(idTarget) && file.contains(nameTarget)) { return true; } } return false; }