List of usage examples for java.io FileReader close
public void close() throws IOException
From source file:org.apache.flink.runtime.operators.DataSinkTaskTest.java
@Test @SuppressWarnings("unchecked") public void testSortingDataSinkTask() { int keyCnt = 100; int valCnt = 20; double memoryFraction = 1.0; super.initEnvironment(MEMORY_MANAGER_SIZE, NETWORK_BUFFER_SIZE); super.addInput(new UniformRecordGenerator(keyCnt, valCnt, true), 0); DataSinkTask<Record> testTask = new DataSinkTask<Record>(); // set sorting super.getTaskConfig().setInputLocalStrategy(0, LocalStrategy.SORT); super.getTaskConfig().setInputComparator(new RecordComparatorFactory(new int[] { 1 }, ((Class<? extends Key<?>>[]) new Class[] { IntValue.class })), 0); super.getTaskConfig().setRelativeMemoryInput(0, memoryFraction); super.getTaskConfig().setFilehandlesInput(0, 8); super.getTaskConfig().setSpillingThresholdInput(0, 0.8f); super.registerFileOutputTask(testTask, MockOutputFormat.class, new File(tempTestPath).toURI().toString()); try {/*from w w w . j a v a2 s. c o m*/ testTask.invoke(); } catch (Exception e) { LOG.debug(e); Assert.fail("Invoke method caused exception."); } File tempTestFile = new File(this.tempTestPath); Assert.assertTrue("Temp output file does not exist", tempTestFile.exists()); FileReader fr = null; BufferedReader br = null; try { fr = new FileReader(tempTestFile); br = new BufferedReader(fr); Set<Integer> keys = new HashSet<Integer>(); int curVal = -1; while (br.ready()) { String line = br.readLine(); Integer key = Integer.parseInt(line.substring(0, line.indexOf("_"))); Integer val = Integer.parseInt(line.substring(line.indexOf("_") + 1, line.length())); // check that values are in correct order Assert.assertTrue("Values not in ascending order", val >= curVal); // next value hit if (val > curVal) { if (curVal != -1) { // check that we saw 100 distinct keys for this values Assert.assertTrue("Keys missing for value", keys.size() == 100); } // empty keys set keys.clear(); // update current value curVal = val; } Assert.assertTrue("Duplicate key for value", keys.add(key)); } } catch (FileNotFoundException e) { Assert.fail("Out file got lost..."); } catch (IOException ioe) { Assert.fail("Caught IOE while reading out file"); } finally { if (br != null) { try { br.close(); } catch (Throwable t) { } } if (fr != null) { try { fr.close(); } catch (Throwable t) { } } } }
From source file:eu.stratosphere.pact.runtime.task.DataSinkTaskTest.java
@Test public void testDataSinkTask() { int keyCnt = 100; int valCnt = 20; super.initEnvironment(MEMORY_MANAGER_SIZE, NETWORK_BUFFER_SIZE); super.addInput(new UniformRecordGenerator(keyCnt, valCnt, false), 0); DataSinkTask<Record> testTask = new DataSinkTask<Record>(); super.registerFileOutputTask(testTask, MockOutputFormat.class, new File(tempTestPath).toURI().toString()); try {/* ww w. jav a 2 s .c o m*/ testTask.invoke(); } catch (Exception e) { LOG.debug(e); Assert.fail("Invoke method caused exception."); } File tempTestFile = new File(this.tempTestPath); Assert.assertTrue("Temp output file does not exist", tempTestFile.exists()); FileReader fr = null; BufferedReader br = null; try { fr = new FileReader(tempTestFile); br = new BufferedReader(fr); HashMap<Integer, HashSet<Integer>> keyValueCountMap = new HashMap<Integer, HashSet<Integer>>(keyCnt); while (br.ready()) { String line = br.readLine(); Integer key = Integer.parseInt(line.substring(0, line.indexOf("_"))); Integer val = Integer.parseInt(line.substring(line.indexOf("_") + 1, line.length())); if (!keyValueCountMap.containsKey(key)) { keyValueCountMap.put(key, new HashSet<Integer>()); } keyValueCountMap.get(key).add(val); } Assert.assertTrue("Invalid key count in out file. Expected: " + keyCnt + " Actual: " + keyValueCountMap.keySet().size(), keyValueCountMap.keySet().size() == keyCnt); for (Integer key : keyValueCountMap.keySet()) { Assert.assertTrue("Invalid value count for key: " + key + ". Expected: " + valCnt + " Actual: " + keyValueCountMap.get(key).size(), keyValueCountMap.get(key).size() == valCnt); } } catch (FileNotFoundException e) { Assert.fail("Out file got lost..."); } catch (IOException ioe) { Assert.fail("Caught IOE while reading out file"); } finally { if (br != null) { try { br.close(); } catch (Throwable t) { } } if (fr != null) { try { fr.close(); } catch (Throwable t) { } } } }
From source file:org.apache.jetspeed.modules.actions.portlets.PsmlUpdateAction.java
/** * Load a PSMLDOcument from disk/* ww w .ja v a 2s . c o m*/ * * @param fileOrUrl a String representing either an absolute URL or an * absolute filepath */ private PSMLDocument loadDocument(String fileOrUrl) { PSMLDocument doc = null; if (fileOrUrl != null) { // we'll assume the name is the the location of the file File f = null; f = new File(fileOrUrl); if (!f.exists()) { return null; } doc = new BasePSMLDocument(); doc.setName(fileOrUrl); // now that we have a file reference, try to load the serialized PSML Portlets portlets = null; FileReader reader = null; try { reader = new FileReader(f); Unmarshaller unmarshaller = new Unmarshaller(this.loadMapping()); portlets = (Portlets) unmarshaller.unmarshal(reader); doc.setPortlets(portlets); } catch (IOException e) { logger.error("PSMLUpdateAction: Could not load the file " + f.getAbsolutePath(), e); } catch (MarshalException e) { logger.error("PSMLUpdateAction: Could not unmarshal the file " + f.getAbsolutePath(), e); } catch (MappingException e) { logger.error("PSMLUpdateAction: Could not unmarshal the file " + f.getAbsolutePath(), e); } catch (ValidationException e) { logger.error("PSMLUpdateAction: document " + f.getAbsolutePath() + " is not valid", e); } catch (Exception e) { logger.error("PSMLUpdateAction: Error while loading " + f.getAbsolutePath(), e); } finally { try { reader.close(); } catch (IOException e) { } } } return doc; }
From source file:eu.stratosphere.pact.runtime.task.DataSinkTaskTest.java
@Test public void testUnionDataSinkTask() { int keyCnt = 100; int valCnt = 20; super.initEnvironment(MEMORY_MANAGER_SIZE, NETWORK_BUFFER_SIZE); super.addInput(new UniformRecordGenerator(keyCnt, valCnt, 0, 0, false), 0); super.addInput(new UniformRecordGenerator(keyCnt, valCnt, keyCnt, 0, false), 0); super.addInput(new UniformRecordGenerator(keyCnt, valCnt, keyCnt * 2, 0, false), 0); super.addInput(new UniformRecordGenerator(keyCnt, valCnt, keyCnt * 3, 0, false), 0); DataSinkTask<Record> testTask = new DataSinkTask<Record>(); super.registerFileOutputTask(testTask, MockOutputFormat.class, new File(tempTestPath).toURI().toString()); try {/*from ww w. j a v a2 s.c o m*/ testTask.invoke(); } catch (Exception e) { LOG.debug(e); Assert.fail("Invoke method caused exception."); } File tempTestFile = new File(this.tempTestPath); Assert.assertTrue("Temp output file does not exist", tempTestFile.exists()); FileReader fr = null; BufferedReader br = null; try { fr = new FileReader(tempTestFile); br = new BufferedReader(fr); HashMap<Integer, HashSet<Integer>> keyValueCountMap = new HashMap<Integer, HashSet<Integer>>(keyCnt); while (br.ready()) { String line = br.readLine(); Integer key = Integer.parseInt(line.substring(0, line.indexOf("_"))); Integer val = Integer.parseInt(line.substring(line.indexOf("_") + 1, line.length())); if (!keyValueCountMap.containsKey(key)) { keyValueCountMap.put(key, new HashSet<Integer>()); } keyValueCountMap.get(key).add(val); } Assert.assertTrue("Invalid key count in out file. Expected: " + keyCnt + " Actual: " + keyValueCountMap.keySet().size(), keyValueCountMap.keySet().size() == keyCnt * 4); for (Integer key : keyValueCountMap.keySet()) { Assert.assertTrue("Invalid value count for key: " + key + ". Expected: " + valCnt + " Actual: " + keyValueCountMap.get(key).size(), keyValueCountMap.get(key).size() == valCnt); } } catch (FileNotFoundException e) { Assert.fail("Out file got lost..."); } catch (IOException ioe) { Assert.fail("Caught IOE while reading out file"); } finally { if (br != null) { try { br.close(); } catch (Throwable t) { } } if (fr != null) { try { fr.close(); } catch (Throwable t) { } } } }
From source file:org.jlinda.core.coregistration.estimation.utils.JamaUtils.java
public static Matrix loadSparseMatrix(File file) { FileReader fileReader = null; try {/*from w w w. ja v a 2 s. c o m*/ fileReader = new FileReader(file); BufferedReader reader = new BufferedReader(fileReader); int lineNumber = 0; String line = null; String[] split = null; int rows = -1, cols = -1; // read the matrix size while ((line = reader.readLine()) != null) { lineNumber++; // skip lines that don't start with a number if (!line.matches("^\\d+?.*")) continue; split = line.split("[\\s,;]"); if (split.length != 2) { throw new IllegalArgumentException( "Invalid matrix file format: file must start with the size of the matrix. Error on line number " + lineNumber + "."); } rows = Integer.parseInt(split[0]); cols = Integer.parseInt(split[1]); break; } Matrix matrix = new Matrix(rows, cols); int row = 0; // read each line of the matrix, skipping non-matrix rows while ((line = reader.readLine()) != null) { lineNumber++; // skip lines that don't start with a number if (!line.matches("^\\d+?.*")) continue; split = line.split("[\\s,;]"); // detect a full matrix specification if (split.length == cols) { for (int col = 0; col < cols; col++) { matrix.set(row, col, Double.parseDouble(split[col])); } } else if (split.length == 3) { matrix.set(Integer.parseInt(split[0]), Integer.parseInt(split[1]), Double.parseDouble(split[2])); } else { throw new IllegalArgumentException( "Invalid matrix file format: must be either a full or sparse specification. Error on line number " + lineNumber + "."); } row++; } return matrix; } catch (IOException e) { System.err.println("Invalid file: " + file.getAbsolutePath()); } finally { try { fileReader.close(); } catch (Exception e) { } } return null; }
From source file:eus.ixa.ixa.pipe.convert.AbsaSemEval.java
public static String absa2015Toabsa2015AnotatedWithMultipleDocClasModelsX(String fileName, String modelsList) { //reading the ABSA xml file SAXBuilder sax = new SAXBuilder(); XPathFactory xFactory = XPathFactory.instance(); Document doc = null;//ww w. j a va 2 s . c o m try { doc = sax.build(fileName); XPathExpression<Element> expr = xFactory.compile("//sentence", Filters.element()); List<Element> sentences = expr.evaluate(doc); //int cantSent = 0; for (Element sent : sentences) { Element opinionsElement = sent.getChild("Opinions"); if (opinionsElement != null) { //iterating over every opinion in the opinions element List<Element> opinionList = opinionsElement.getChildren(); for (int i = opinionList.size() - 1; i >= 0; i--) { Element opinion = opinionList.get(i); opinionsElement.removeContent(opinion); } } Path pathx = FileSystems.getDefault().getPath("./", "TEXT.txt"); Files.deleteIfExists(pathx); File f = new File("TEXT.txt"); FileUtils.writeStringToFile(f, sent.getChildText("text"), "UTF-8"); /*Path path1 = FileSystems.getDefault().getPath("./", "NAF1.txt"); Files.deleteIfExists(path1); String[] cmd1 = { "/bin/sh", "-c", "cat TEXT.txt | java -jar /home/vector/Documents/Ixa-git/ixa-pipe-tok/target/ixa-pipe-tok-1.8.5-exec.jar tok -l en > NAF1.txt" }; Process proc1 = Runtime.getRuntime().exec(cmd1); try { if(!proc1.waitFor(30, TimeUnit.MINUTES)) { //timeout - kill the process. proc1.destroy(); // consider using destroyForcibly instead throw new Exception("TimeOut Expired in IXA-PIPE-TOK"); } }catch (Exception e) { System.out.println(" ERROR: "); }*/ //System.err.println(kaf.toString()); File file = new File(modelsList); FileReader fileReader = new FileReader(file); BufferedReader bufferedReader = new BufferedReader(fileReader); String line; String nextCommand = ""; //int port = 2000; while ((line = bufferedReader.readLine()) != null) { //System.err.println("-" + line + "-" + kaf.getLang()); System.err.println(" Model: " + line); //nextCommand +=" | java -jar /home/vector/Documents/Ixa-git/ixa-pipe-doc/target/ixa-pipe-doc-0.0.2-exec.jar client -p " + port; nextCommand += " | java -jar /home/vector/Documents/Ixa-git/ixa-pipe-doc/target/ixa-pipe-doc-0.0.2-exec.jar tag -m " + line; //File fileTmp = new File("NAF.txt"); //File fileTmp2 = new File("NAF1.txt"); //Files.copy(fileTmp.toPath(), fileTmp2.toPath(), StandardCopyOption.REPLACE_EXISTING); //Files.delete(fileTmp.toPath()); //port ++; } fileReader.close(); String[] cmd = { "/bin/sh", "-c", "cat TEXT.txt | java -jar /home/vector/Documents/Ixa-git/ixa-pipe-tok/target/ixa-pipe-tok-1.8.5-exec.jar tok -l en" + nextCommand + " > NAF.txt" }; //System.err.println("cat TEXT.txt | java -jar /home/vector/Documents/Ixa-git/ixa-pipe-tok/target/ixa-pipe-tok-1.8.5-exec.jar tok -l en" + nextCommand + " > NAF.txt"); Process proc = Runtime.getRuntime().exec(cmd); try { if (!proc.waitFor(30, TimeUnit.MINUTES)) { //timeout - kill the process. proc.destroy(); // consider using destroyForcibly instead throw new Exception("TimeOut Expired in IXA"); } } catch (Exception e) { System.out.println(" ERROR: "); } //System.err.println(kaf.toString()); //cantSent++; /*try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); }*/ File fileDir = new File("NAF.txt"); System.err.println("Terminado: " + sent.getChildText("text")); BufferedReader breader1 = new BufferedReader( new InputStreamReader(new FileInputStream(fileDir), "UTF-8")); KAFDocument kaf = null; try { kaf = KAFDocument.createFromStream(breader1); } catch (Exception e) { System.err.println("ENTRA A ERROR"); e.printStackTrace(); continue; } List<Topic> topicList = kaf.getTopics(); for (Topic topic : topicList) { //System.err.println(topic.getTopicValue()); if (!topic.getTopicValue().equals("NO")) { Element opinionElem = new Element("Opinion"); opinionElem.setAttribute("target", "na"); opinionElem.setAttribute("category", topic.getTopicValue()); //TODO we still do not have polarity here opinionElem.setAttribute("polarity", "na"); opinionElem.setAttribute("from", "0"); opinionElem.setAttribute("to", "0"); opinionsElement.addContent(opinionElem); } } } //end of sentence } catch (JDOMException | IOException e) { e.printStackTrace(); } XMLOutputter xmlOutput = new XMLOutputter(); Format format = Format.getPrettyFormat(); xmlOutput.setFormat(format); return xmlOutput.outputString(doc); }
From source file:com.ah.be.common.NmsUtil.java
/** * read File by line// w ww. ja va 2 s . c om * if File is not exist,return null * * @param filePath - * @return List<String> * @throws IOException */ public static List<String> readFileByLines(String filePath) throws IOException { List<String> result = null; File file = new File(filePath); if (!file.exists()) { return result; } FileReader fr = null; BufferedReader reader = null; try { fr = new FileReader(file); reader = new BufferedReader(fr); String tempString; result = new ArrayList<String>(); while ((tempString = reader.readLine()) != null) { result.add(tempString); } } finally { if (reader != null) { try { reader.close(); } catch (IOException e) { log.error("readFileByLines", "IO Close Error.", e); } } if (fr != null) { try { fr.close(); } catch (IOException e) { log.error("readFileByLines", "IO Close Error.", e); } } } return result; }
From source file:skoa.helpers.Graficos.java
private void unificarDatosFicheros() { Vector<String> nombresFicheros2 = new Vector<String>(nombresFicheros); //Copiamos los nombres String nombreFicheroEscogido; String nombreFicheroReferencia = nombresFicheros2.get(0); //Se coge el 1 fichero de referencia, al que se le irn aadiendo los datos. nombresFicheros2.remove(0);/*from ww w . j av a 2s. co m*/ crearFicheroTemporal(nombreFicheroReferencia); for (int i = 0; i < nombresFicheros2.size(); i++) { nombreFicheroEscogido = nombresFicheros2.elementAt(i); File archivo = new File(ruta + nombreFicheroEscogido); FileReader fr = null; BufferedReader linea = null; String line; try { fr = new FileReader(archivo); linea = new BufferedReader(fr); while ((line = linea.readLine()) != null) { //Lectura del fichero incluirDatos(line); } } catch (Exception e) { e.printStackTrace(); } finally { try { if (null != fr) fr.close(); //Se cierra si todo va bien. } catch (Exception e2) { //Sino salta una excepcion. e2.printStackTrace(); } } } //fin for }
From source file:SWTAddressBook.java
private void openAddressBook() { FileDialog fileDialog = new FileDialog(shell, SWT.OPEN); fileDialog.setFilterExtensions(new String[] { "*.adr;", "*.*" }); fileDialog.setFilterNames(new String[] { "Book_filter_name" + " (*.adr)", "All_filter_name" + " (*.*)" }); String name = fileDialog.open(); if (name == null) return;/*www .j a va 2s. co m*/ File file = new File(name); if (!file.exists()) { displayError("File" + file.getName() + " " + "Does_not_exist"); return; } Cursor waitCursor = new Cursor(shell.getDisplay(), SWT.CURSOR_WAIT); shell.setCursor(waitCursor); FileReader fileReader = null; BufferedReader bufferedReader = null; String[] data = new String[0]; try { fileReader = new FileReader(file.getAbsolutePath()); bufferedReader = new BufferedReader(fileReader); String nextLine = bufferedReader.readLine(); while (nextLine != null) { String[] newData = new String[data.length + 1]; System.arraycopy(data, 0, newData, 0, data.length); newData[data.length] = nextLine; data = newData; nextLine = bufferedReader.readLine(); } } catch (FileNotFoundException e) { displayError("File_not_found" + "\n" + file.getName()); return; } catch (IOException e) { displayError("IO_error_read" + "\n" + file.getName()); return; } finally { shell.setCursor(null); waitCursor.dispose(); if (fileReader != null) { try { fileReader.close(); } catch (IOException e) { displayError("IO_error_close" + "\n" + file.getName()); return; } } } String[][] tableInfo = new String[data.length][table.getColumnCount()]; int writeIndex = 0; for (int i = 0; i < data.length; i++) { String[] line = decodeLine(data[i]); if (line != null) tableInfo[writeIndex++] = line; } if (writeIndex != data.length) { String[][] result = new String[writeIndex][table.getColumnCount()]; System.arraycopy(tableInfo, 0, result, 0, writeIndex); tableInfo = result; } Arrays.sort(tableInfo, new RowComparator(0)); for (int i = 0; i < tableInfo.length; i++) { TableItem item = new TableItem(table, SWT.NONE); item.setText(tableInfo[i]); } shell.setText("Title_bar" + fileDialog.getFileName()); isModified = false; this.file = file; }
From source file:fsi_admin.admon.JAyudaPaginaDlg.java
public void GenerarAyuda(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { short idmensaje = -1; String mensaje = ""; idmensaje = 0;//from w ww . j a va 2s. c o m mensaje = "Las pginas de ayuda y la configuracion de inicios de ayuda se generaron con xito"; JAdmVariablesSet var = new JAdmVariablesSet(null); var.ConCat(true); var.m_Where = "ID_Variable = 'TOMCAT'"; var.Open(); if (var.getAbsRow(0).getVAlfanumerico().equals("NC")) { idmensaje = 1; mensaje = "PRECAUCION: La variable TOMCAT (ruta de instalacion de tomcat) no est definida... No se puede generar la ayuda"; getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiadmin/caja_mensajes.jsp", request, response); return; } //carga los archivos de ayuda que contienen la plantilla completa y sencilla html String p = "", ps = ""; FileReader file = new FileReader("/usr/local/forseti/bin/forseti_doc/forseti_doc.html"); BufferedReader buff = new BufferedReader(file); boolean eof = false; while (!eof) { String line = buff.readLine(); if (line == null) eof = true; else p += line + "\n"; } buff.close(); file.close(); buff = null; file = null; file = new FileReader("/usr/local/forseti/bin/forseti_doc/forseti_doc_simple.html"); buff = new BufferedReader(file); eof = false; while (!eof) { String line = buff.readLine(); if (line == null) eof = true; else ps += line + "\n"; } buff.close(); file.close(); buff = null; file = null; // genera las paginas html con el contenido de la ayuda int ini_index = p.indexOf("<!--_menu_ini-->"); String fin_plant = p.substring(0, ini_index); // genera los menus int fin_index = p.indexOf("<!--_menu_fin-->"); String t_menus = "", f_menus = ""; String p_menus = p.substring(ini_index + 16, fin_index); // p_menu: <td height="30" align="center" valign="middle" bgcolor="fsi-bgcolor-menu"><a class="txtMenu" href="fsi-href-menu" target="_self">fsi-descripcion-menu</a></td> JAyudaTipoSet menu = new JAyudaTipoSet(null); menu.m_OrderBy = "ID_Tipo ASC"; menu.ConCat(true); menu.Open(); for (int i = 0; i < menu.getNumRows(); i++) { int mod = i % 2; t_menus = p_menus; String bgcolor; if (menu.getAbsRow(i).getDescripcion().equals("CEF")) bgcolor = "#0099FF"; // Azul Cef else if (menu.getAbsRow(i).getDescripcion().equals("SAF")) bgcolor = "#FF6600"; // Naranja Saf ( Color principal forseti ) else if (menu.getAbsRow(i).getDescripcion().equals("REF")) bgcolor = "#FFCC00"; else if (menu.getAbsRow(i).getDescripcion().equals("SOF")) bgcolor = "#339933"; // Verde CEF ( Da concordancia con openSUSE ) else bgcolor = mod == 0 ? "#999999" : "#888888"; //CC0099 Morado para DIF Desarrollo Integral Forseti V5 t_menus = JUtil.replace(t_menus, "fsi-bgcolor-menu", bgcolor); JAyudaPaginasSubTiposTiposSet st = new JAyudaPaginasSubTiposTiposSet(null); st.m_OrderBy = "ID_SubTipo DESC, ID_Pagina ASC"; st.m_Where = "ID_Tipo = '" + p(menu.getAbsRow(i).getID_Tipo()) + "' and Status = '2'"; st.ConCat(true); st.Open(); if (st.getNumRows() > 0) { JAyudaPaginaSet pagset = new JAyudaPaginaSet(null); pagset.ConCat(true); pagset.m_Where = "ID_Pagina = '" + p(st.getAbsRow(0).getID_Pagina()) + "'"; pagset.Open(); t_menus = JUtil.replace(t_menus, "fsi-href-menu", pagset.getAbsRow(0).getID_Pagina() + ".html"); } else t_menus = JUtil.replace(t_menus, "fsi-href-menu", "#"); t_menus = JUtil.replace(t_menus, "fsi-descripcion-menu", menu.getAbsRow(i).getDescripcion()); f_menus += t_menus + "\n"; } ini_index = p.indexOf("<!--_cuerpo_completo_ini-->"); fin_plant += f_menus + p.substring(fin_index + 16, ini_index); fin_plant += "_cuerpo_completo"; fin_index = p.indexOf("<!--_cuerpo_completo_fin-->"); fin_plant += p.substring(fin_index + 27); //ahora genera la plantilla de cuerpo ini_index = p.indexOf("<!--_cuerpo_completo_ini-->") + 27; fin_index = p.indexOf("<!--_cuerpo_completo_fin-->"); String cuerpo_plant = p.substring(ini_index, fin_index); p = null; //libera memoria de p que ya no se utilizar //Empieza con el archivo index String pag = fin_plant; JAyudaSubTipoSet submenu = new JAyudaSubTipoSet(null); submenu.ConCat(true); submenu.m_Where = "ID_Tipo = '01'"; // Menus de generalidades submenu.m_OrderBy = "ID_SubTipo ASC"; submenu.Open(); JAyudaPaginaModuloSet pags = new JAyudaPaginaModuloSet(request, ""); pags.m_Where = "Status = '3'"; pags.ConCat(true); pags.Open(); //System.out.println("Pags Status: 3 = " + pags.getNumRows()); if (pags.getNumRows() > 0) { JAyudaPaginaSet pagset = new JAyudaPaginaSet(null); pagset.ConCat(true); pagset.m_Where = "ID_Pagina = '" + p(pags.getAbsRow(0).getID_Pagina()) + "'"; pagset.Open(); String menu01 = "<table width=\"100%\" border=\"0\" cellpadding=\"5\" cellspacing=\"0\">\n"; //System.out.println("SetSubTipo: 01 = " + setsub.getNumRows()); if (submenu.getNumRows() > 0 && submenu.getNumRows() < 4) { menu01 += "<tr>\n"; for (int i = 1; i < 3; i++) { menu01 += "<td valign=\"top\" width=\"30%\"><strong>" + submenu.getAbsRow(i).getDescripcion() + "</strong><br>\n"; JAyudaPaginaModuloSet pagsub = new JAyudaPaginaModuloSet(request, ""); pagsub.ConCat(true); pagsub.m_Where = "ID_SubTipo = '" + p(submenu.getAbsRow(i).getID_SubTipo()) + "' and Status <> '3'"; pagsub.m_OrderBy = "ID_Pagina ASC"; pagsub.Open(); for (int j = 0; j < pagsub.getNumRows(); j++) { menu01 += "<br><a href=\"" + pagsub.getAbsRow(j).getID_Pagina() + ".html\" class=\"txtPag\" target=\"_self\"><font color=\"#FF6600\">" + pagsub.getAbsRow(j).getDescripcion() + "</font></a><br><font color=\"#999999\">" + pagsub.getAbsRow(j).getBusqueda() + "</font>\n"; } menu01 += "</td>\n"; } menu01 += "</tr>\n"; menu01 += "</table>\n"; } String pagcon01 = JUtil.replace(pagset.getAbsRow(0).getCuerpo(), "_GENERALIDADES_TABLE", menu01); pag = JUtil.replace(fin_plant, "_cuerpo_completo", pagcon01); System.out.println("PAGINA:" + menu01); } //Ahora guarda index.html FileWriter fw = new FileWriter(var.getAbsRow(0).getVAlfanumerico() + "/webapps/ROOT/forsetidoc/index.html"); PrintWriter pw = new PrintWriter(fw); pw.println(pag); fw.close(); //Ahora trabaja con cada plantilla y sus paginas ini_index = cuerpo_plant.indexOf("<!--_submenu_ini-->"); fin_index = cuerpo_plant.indexOf("<!--_submenu_fin-->"); String fin_cuerpo_plant = cuerpo_plant.substring(0, ini_index); String p_submenu = cuerpo_plant.substring(ini_index + 19, fin_index); ini_index = cuerpo_plant.indexOf("<!--_cuerpo_ini-->"); fin_cuerpo_plant += "_submenu" + cuerpo_plant.substring(fin_index + 19, ini_index); fin_index = cuerpo_plant.indexOf("<!--_cuerpo_fin-->"); String p_cuerpo = cuerpo_plant.substring(ini_index + 18, fin_index); ini_index = cuerpo_plant.indexOf("<!--_enlaces_ini-->"); String p_enlacestit = cuerpo_plant.substring(fin_index + 18, ini_index); fin_index = cuerpo_plant.indexOf("<!--_enlaces_fin-->"); String p_enlaces = cuerpo_plant.substring(ini_index + 19, fin_index); ini_index = cuerpo_plant.indexOf("<!--_paginas_ini-->"); fin_cuerpo_plant += "_cuerpo_enlacestit_enlaces" + cuerpo_plant.substring(fin_index + 19, ini_index); fin_index = cuerpo_plant.indexOf("<!--_paginas_fin-->"); String p_paginas = cuerpo_plant.substring(ini_index + 19, fin_index); fin_cuerpo_plant += "_paginas" + cuerpo_plant.substring(fin_index + 19); /*System.out.println(fin_cuerpo_plant); System.out.println(p_submenu); System.out.println(p_cuerpo); System.out.println(p_enlacestit); System.out.println(p_enlaces); System.out.println(p_paginas);*/ //Ahora genera las pginas completas String cefrep_cuerpo_final = ""; String safrep_cuerpo_final = ""; String cefrep_pagina_final = ""; String safrep_pagina_final = ""; cuerpo_plant = null; //libera memoria del cuerpo for (int i = 0; i < menu.getNumRows(); i++) { String mid = menu.getAbsRow(i).getID_Tipo(); String color; if (menu.getAbsRow(i).getDescripcion().equals("CEF")) color = "#0099FF"; // Azul Cef else if (menu.getAbsRow(i).getDescripcion().equals("SAF")) color = "#FF6600"; // Naranja Saf ( Color principal forseti ) else if (menu.getAbsRow(i).getDescripcion().equals("REF")) color = "#FFCC00"; // FF0000 que es amarillo else if (menu.getAbsRow(i).getDescripcion().equals("SOF")) color = "#339933"; // Verde CEF ( Da concordancia con openSUSE ) else color = "#444444"; submenu.m_Where = "ID_Tipo = '" + p(mid) + "'"; submenu.m_OrderBy = "ID_SubTipo ASC"; submenu.ConCat(true); submenu.Open(); //Construye este submenu String f_submenu = "", t_submenu = ""; for (int ism = 0; ism < submenu.getNumRows(); ism++) { t_submenu = p_submenu; t_submenu = JUtil.replace(t_submenu, "fsi-color-submenu", color); JAyudaPaginasSubTiposTiposSet st = new JAyudaPaginasSubTiposTiposSet(null); st.m_OrderBy = "Status DESC, ID_Pagina ASC"; st.m_Where = "ID_SubTipo = '" + p(submenu.getAbsRow(ism).getID_SubTipo()) + "' and (Status = '1' or Status = '2')"; st.ConCat(true); st.Open(); if (st.getNumRows() > 0) t_submenu = JUtil.replace(t_submenu, "fsi-href-submenu", st.getAbsRow(0).getID_Pagina() + ".html"); else t_submenu = JUtil.replace(t_submenu, "fsi-href-submenu", "#"); t_submenu = JUtil.replace(t_submenu, "fsi-descripcion-submenu", submenu.getAbsRow(ism).getDescripcion()); f_submenu += t_submenu + "\n"; } //Fin construccion submenu //System.out.println(f_submenu); for (int ism = 0; ism < submenu.getNumRows(); ism++) { pags.m_Where = "ID_SubTipo = '" + p(submenu.getAbsRow(ism).getID_SubTipo()) + "' and Status <> '3' and Tipo = 'COMPLETA'"; pags.m_OrderBy = "ID_Pagina ASC"; pags.ConCat(true); pags.Open(); //construye paginas del submenu String f_paginas = "", t_paginas = ""; for (int ip = 0; ip < pags.getNumRows(); ip++) { t_paginas = p_paginas; t_paginas = JUtil.replace(t_paginas, "fsi-color-paginas", color); t_paginas = JUtil.replace(t_paginas, "fsi-href-paginas", pags.getAbsRow(ip).getID_Pagina() + ".html"); t_paginas = JUtil.replace(t_paginas, "fsi-descripcion-paginas", pags.getAbsRow(ip).getDescripcion()); t_paginas = JUtil.replace(t_paginas, "fsi-busqueda-paginas", pags.getAbsRow(ip).getBusqueda()); f_paginas += t_paginas + "\n"; } //System.out.println(f_paginas); //fin construccion de paginas del submenu //Ahora si construye cada pgina del sitio String f_cuerpo = "", t_cuerpo = "", f_enlacestit = "", t_enlacestit = "", f_enlaces = "", t_enlaces = ""; for (int ip = 0; ip < pags.getNumRows(); ip++) { JAyudaPaginaSet pagset = new JAyudaPaginaSet(null); pagset.ConCat(true); pagset.m_Where = "ID_Pagina = '" + p(pags.getAbsRow(ip).getID_Pagina()) + "'"; pagset.Open(); f_cuerpo = ""; t_cuerpo = p_cuerpo; t_cuerpo = JUtil.replace(t_cuerpo, "fsi-color-titulo", color); t_cuerpo = JUtil.replace(t_cuerpo, "fsi-cuerpo-titulo", pags.getAbsRow(ip).getDescripcion()); //Si es la pgina de reportes del Saf o Cef manda a crearla if (pags.getAbsRow(ip).getID_Alternativo().equals("FSI-SAFREP")) t_cuerpo = generarIndiceReportes(t_cuerpo, "fsi-cuerpo-todo", "SAF", color, pags.getAbsRow(ip).getID_Alternativo()); else if (pags.getAbsRow(ip).getID_Alternativo().equals("FSI-CEFREP")) t_cuerpo = generarIndiceReportes(t_cuerpo, "fsi-cuerpo-todo", "CEF", color, pags.getAbsRow(ip).getID_Alternativo()); else t_cuerpo = JUtil.replace(t_cuerpo, "fsi-cuerpo-todo", pagset.getAbsRow(0).getCuerpo()); f_cuerpo = t_cuerpo + "\n"; JAyudaPaginasEnlacesSet pvp = new JAyudaPaginasEnlacesSet(null); pvp.m_OrderBy = "ID_Pagina ASC"; pvp.m_Where = "ID_Enlace = '" + p(pags.getAbsRow(ip).getID_Pagina()) + "'"; pvp.ConCat(true); pvp.Open(); f_enlacestit = ""; f_enlaces = ""; t_enlacestit = ""; t_enlaces = ""; if (pvp.getNumRows() > 0) { t_enlacestit = p_enlacestit; t_enlacestit = JUtil.replace(t_enlacestit, "fsi-color-enlacestit", color); f_enlacestit += t_enlacestit + "\n"; for (int ie = 0; ie < pvp.getNumRows(); ie++) { t_enlaces = p_enlaces; t_enlaces = JUtil.replace(t_enlaces, "fsi-color-enlaces", color); t_enlaces = JUtil.replace(t_enlaces, "fsi-href-enlaces", pvp.getAbsRow(ie).getID_Pagina() + ".html"); t_enlaces = JUtil.replace(t_enlaces, "fsi-descripcion-enlaces", pvp.getAbsRow(ie).getDescripcion()); t_enlaces = JUtil.replace(t_enlaces, "fsi-busqueda-enlaces", pvp.getAbsRow(ie).getBusqueda()); f_enlaces += t_enlaces + "\n"; } //System.out.println(f_enlacestit + f_enlaces); } //Guarda la pagina en forsetidoc String cuerpo_final = fin_cuerpo_plant; cuerpo_final = JUtil.replace(cuerpo_final, "_submenu", f_submenu); cuerpo_final = JUtil.replace(cuerpo_final, "_cuerpo", f_cuerpo); cuerpo_final = JUtil.replace(cuerpo_final, "_enlacestit", f_enlacestit); cuerpo_final = JUtil.replace(cuerpo_final, "_enlaces", f_enlaces); cuerpo_final = JUtil.replace(cuerpo_final, "_paginas", f_paginas); String pagina_final = fin_plant; pagina_final = JUtil.replace(pagina_final, "_cuerpo_completo", cuerpo_final); //Si es el de reportes del saf construye plantilla de pgina de reportes del SAF if (pags.getAbsRow(ip).getID_Alternativo().equals("FSI-SAFREP")) { safrep_cuerpo_final = fin_cuerpo_plant; safrep_cuerpo_final = JUtil.replace(safrep_cuerpo_final, "_submenu", f_submenu); safrep_cuerpo_final = JUtil.replace(safrep_cuerpo_final, "_cuerpo", p_cuerpo); safrep_cuerpo_final = JUtil.replace(safrep_cuerpo_final, "_enlacestit", f_enlacestit); safrep_cuerpo_final = JUtil.replace(safrep_cuerpo_final, "_enlaces", f_enlaces); safrep_cuerpo_final = JUtil.replace(safrep_cuerpo_final, "_paginas", f_paginas); safrep_pagina_final = fin_plant; safrep_pagina_final = JUtil.replace(safrep_pagina_final, "_cuerpo_completo", safrep_cuerpo_final); } //Si es el de reportes del cef construye plantilla de pgina de reportes del CEF if (pags.getAbsRow(ip).getID_Alternativo().equals("FSI-CEFREP")) { cefrep_cuerpo_final = fin_cuerpo_plant; cefrep_cuerpo_final = JUtil.replace(cefrep_cuerpo_final, "_submenu", f_submenu); cefrep_cuerpo_final = JUtil.replace(cefrep_cuerpo_final, "_cuerpo", p_cuerpo); cefrep_cuerpo_final = JUtil.replace(cefrep_cuerpo_final, "_enlacestit", f_enlacestit); cefrep_cuerpo_final = JUtil.replace(cefrep_cuerpo_final, "_enlaces", f_enlaces); cefrep_cuerpo_final = JUtil.replace(cefrep_cuerpo_final, "_paginas", f_paginas); cefrep_pagina_final = fin_plant; cefrep_pagina_final = JUtil.replace(cefrep_pagina_final, "_cuerpo_completo", cefrep_cuerpo_final); } //Ahora guarda el html //System.out.println(pags.getAbsRow(ip).getID_Pagina() + ".html"); FileWriter fwp = new FileWriter(var.getAbsRow(0).getVAlfanumerico() + "/webapps/ROOT/forsetidoc/" + pags.getAbsRow(ip).getID_Pagina() + ".html"); PrintWriter pwp = new PrintWriter(fwp); pwp.println(pagina_final); fwp.close(); // Fin de pagina guardada // Si contiene id_alterntivo, guarda una copia del id alternativo if (pags.getAbsRow(ip).getID_Alternativo() != null && !pags.getAbsRow(ip).getID_Alternativo().equals("null")) { fwp = new FileWriter(var.getAbsRow(0).getVAlfanumerico() + "/webapps/ROOT/forsetidoc/" + pags.getAbsRow(ip).getID_Alternativo() + ".html"); pwp = new PrintWriter(fwp); pwp.println(pagina_final); fwp.close(); } // Si esta pgina es la de reportes del SAF o CEF, genera las pginas de cada reporte sus estructuras if (pags.getAbsRow(ip).getID_Alternativo() != null && (pags.getAbsRow(ip).getID_Alternativo().equals("FSI-SAFREP") || pags.getAbsRow(ip).getID_Alternativo().equals("FSI-CEFREP"))) { if (pags.getAbsRow(ip).getID_Alternativo().equals("FSI-SAFREP")) GenerarAyudaReportes(var.getAbsRow(0).getVAlfanumerico() + "/webapps/ROOT/forsetidoc/", safrep_pagina_final, "SAF", color); else GenerarAyudaReportes(var.getAbsRow(0).getVAlfanumerico() + "/webapps/ROOT/forsetidoc/", cefrep_pagina_final, "CEF", color); } } } } //Ahora genera las paginas sencillas pags.m_Where = "Tipo = 'SENCILLA'"; pags.m_OrderBy = "ID_Pagina ASC"; pags.ConCat(true); pags.Open(); for (int ip = 0; ip < pags.getNumRows(); ip++) { JAyudaPaginaSet pagset = new JAyudaPaginaSet(request); pagset.ConCat(true); pagset.m_Where = "ID_Pagina = '" + p(pags.getAbsRow(ip).getID_Pagina()) + "'"; pagset.Open(); //Guarda la pagina en forsetidoc String pagina_final = JUtil.replace(ps, "_cuerpo_completo", pagset.getAbsRow(0).getCuerpo()); //Ahora guarda el html //System.out.println(pags.getAbsRow(ip).getID_Pagina() + ".html"); FileWriter fwp = new FileWriter(var.getAbsRow(0).getVAlfanumerico() + "/webapps/ROOT/forsetidoc/" + pags.getAbsRow(ip).getID_Pagina() + ".html"); PrintWriter pwp = new PrintWriter(fwp); pwp.println(pagina_final); fwp.close(); // Fin de pagina guardada } /////////////////////////////////////////////////////////////////////////// //Ya gener el sitio web de ayuda, ahora genera la exportacion de ayuda. /////////////////////////////////////////////////////////////////////////// FileWriter fwp = new FileWriter("/usr/local/forseti/bin/.forseti_doc"); PrintWriter pwp = new PrintWriter(fwp); String archivo = "_INI_TIPOS\n"; JAyudaTipoSet ats = new JAyudaTipoSet(null); ats.m_OrderBy = "ID_Tipo ASC"; ats.ConCat(true); ats.Open(); for (int i = 0; i < ats.getNumRows(); i++) { archivo += ats.getAbsRow(i).getID_Tipo() + "|" + ats.getAbsRow(i).getDescripcion() + "\n"; pwp.flush(); } archivo += "_FIN_TIPOS\n\n_INI_SUBTIPOS\n"; JAyudaSubTipoSet asts = new JAyudaSubTipoSet(null); asts.m_OrderBy = "ID_SubTipo ASC"; asts.ConCat(true); asts.Open(); for (int i = 0; i < asts.getNumRows(); i++) { archivo += asts.getAbsRow(i).getID_SubTipo() + "|" + asts.getAbsRow(i).getDescripcion() + "|" + asts.getAbsRow(i).getID_Tipo() + "\n"; pwp.flush(); } archivo += "_FIN_SUBTIPOS\n\n_INI_PAGINAS\n\n"; JAyudaPaginaSet aps = new JAyudaPaginaSet(null); aps.m_OrderBy = "ID_Pagina ASC"; aps.ConCat(true); aps.Open(); for (int i = 0; i < aps.getNumRows(); i++) { archivo += "_INI_PAG\n" + aps.getAbsRow(i).getID_Pagina() + "|" + aps.getAbsRow(i).getDescripcion() + "|" + aps.getAbsRow(i).getBusqueda() + "|" + aps.getAbsRow(i).getStatus() + "|" + aps.getAbsRow(i).getTipo() + "|" + aps.getAbsRow(i).getID_Alternativo() + "\n_CUERPO_PAG\n"; archivo += aps.getAbsRow(i).getCuerpo() + "\n_FIN_PAG\n\n"; pwp.flush(); } archivo += "_FIN_PAGINAS\n\n_INI_PAGINAS_ENLACES\n"; JAyudaPaginasEnlacesSet ape = new JAyudaPaginasEnlacesSet(null); ape.ConCat(true); ape.Open(); for (int i = 0; i < ape.getNumRows(); i++) { archivo += ape.getAbsRow(i).getID_Pagina() + "|" + ape.getAbsRow(i).getID_Enlace() + "\n"; pwp.flush(); } archivo += "_FIN_PAGINAS_ENLACES\n\n_INI_PAGINAS_SUBTIPOS\n\n"; JAyudaPaginasSubTiposTiposSet apst = new JAyudaPaginasSubTiposTiposSet(null); apst.ConCat(true); apst.Open(); for (int i = 0; i < apst.getNumRows(); i++) { archivo += apst.getAbsRow(i).getID_SubTipo() + "|" + apst.getAbsRow(i).getID_Pagina() + "\n"; pwp.flush(); } archivo += "\n_FIN_PAGINAS_SUBTIPOS\n\n"; pwp.println(archivo); fwp.close(); RDP("SAF", getSesion(request).getConBD(), (idmensaje == 0 ? "OK" : (idmensaje == 4 ? "AL" : "ER")), getSesion(request).getID_Usuario(), "ADMIN_AYUDA_GENERAR", "AYUP||||", mensaje); getSesion(request).setID_Mensaje(idmensaje, mensaje); irApag("/forsetiadmin/caja_mensajes.jsp", request, response); return; }