/** * Returns the locale match list for a string given the language * * @param literal Code * @param codeLang Language * @return Service * @throws AWException Error retrieving locale matches */ public ServiceData getLocaleMatches(String literal, String codeLang) throws AWException { ServiceData serviceData = new ServiceData(); DataList data = findStringInFile(codeLang.toUpperCase(), literal); serviceData.setDataList(data); return serviceData; }
/** * Get existing select files * * @return Selected file * @throws AWException Error retrieving file */ public ServiceData getSelectFile() throws AWException { ServiceData serviceData = new ServiceData(); String userHome = System.getProperty(USER_HOME); String selectsPath = userHome + SELECTS_PATH; List<String> keys = new ArrayList<>(); File folder = new File(selectsPath); if (!folder.exists()) { folder.mkdir(); } File[] listOfFiles = folder.listFiles(); for (File listOfFile : listOfFiles) { if (listOfFile.isFile()) { keys.add(listOfFile.getName()); } } builder.addColumn("label", keys, STRING); builder.addColumn("value", keys, STRING); serviceData.setDataList(builder.build()); return serviceData; }
/** * Save select file * * @param fileName File name * @return Selected sentence * @throws AWException Error loading sentence * @throws IOException Error retrieving file */ public ServiceData loadSelectSentence(String fileName) throws AWException, IOException { ServiceData serviceData = new ServiceData(); List<String> keys = new ArrayList<>(); String userHome = System.getProperty(USER_HOME); String selectsPath = userHome + SELECTS_PATH; String filePath = selectsPath + AweConstants.FILE_SEPARATOR + fileName; try (FileInputStream file = new FileInputStream(filePath); BufferedReader reader = new BufferedReader(new InputStreamReader(file, Charset.forName(APPLICATION_ENCODING)))) { StringBuilder stringBuilder = new StringBuilder(); String aux = ""; while ((aux = reader.readLine()) != null) { stringBuilder.append(aux).append('\n'); } keys.add(stringBuilder.toString()); } catch (IOException exc) { throw new AWException(getLocale("ERROR_TITLE_WRITING_SELECTS"), getLocale("ERROR_MESSAGE_WRITING_SELECTS"), exc); } builder.addColumn("label", keys, STRING); builder.addColumn("value", keys, STRING); serviceData.setDataList(builder.build()); return serviceData; }
/** * Check if path file properties exists * * @return Service data * @throws AWException Error checking path */ public ServiceData checkPath() throws AWException { ServiceData serviceData = new ServiceData(); Properties properties = getPropertiesFile(); String path = properties.getProperty(developerPathProperty); // If path is not valid, set it to blank if (path == null) { updatePath(""); } List<String> paths = Arrays.asList(path); DataList dataList = new DataList(); DataListUtil.addColumn(dataList, "paths", paths, "STRING"); dataList.setRecords(dataList.getRows().size()); serviceData.setDataList(dataList); return serviceData; }
/** * Returns existing translations corresponding to a code * * @param code Code * @return Translation list * @throws AWException Error retrieving translation list */ public ServiceData getTranslationList(String code) throws AWException { ServiceData serviceData = new ServiceData(); // Get existing Locales Map<String, Map<String, String>> localeList = getElements().getLocales(); // List of loaded languages DataList translations = new DataList(); // Iterate by language for (String codeLang : localeList.keySet()) { // Get language DataList languageData = retrieveLocaleFromFile(code, codeLang.toUpperCase()); translations.getRows().addAll(languageData.getRows()); } serviceData.setDataList(translations); return serviceData; }