List of usage examples for org.apache.commons.lang3 StringEscapeUtils escapeJava
public static final String escapeJava(final String input)
Escapes the characters in a String using Java String rules.
Deals correctly with quotes and control-chars (tab, backslash, cr, ff, etc.)
So a tab becomes the characters '\\' and 't' .
The only difference between Java strings and JavaScript strings is that in JavaScript, a single quote and forward-slash (/) are escaped.
Example:
input string: He didn't say, "Stop!"Usage
From source file:com.siblinks.ws.service.impl.ManagerQAServiceImpl.java
/** * {@inheritDoc}// w w w . j ava 2 s.c o m */ @Override @RequestMapping(value = "/getListQuestionQA", method = RequestMethod.POST) public ResponseEntity<Response> getListQuestionQA(@RequestBody final RequestData request) { SimpleResponse simpleResponse = null; try { if (!AuthenticationFilter.isAuthed(context)) { simpleResponse = new SimpleResponse(SibConstants.FAILURE, "Authentication required."); return new ResponseEntity<Response>(simpleResponse, HttpStatus.FORBIDDEN); } String subjectId = request.getRequest_data().getSubjectId(); String userId = request.getRequest_data().getUid(); String limit = request.getRequest_data().getLimit(); String offset = request.getRequest_data().getOffset(); String type = request.getRequest_data().getType(); String search = request.getRequest_data().getContent(); String subjects = request.getRequest_data().getSubjects(); String whereCause = ""; if (!StringUtil.isNull(search)) { search = StringEscapeUtils.escapeJava(search); whereCause += " AND X.content like '%" + search + "%' "; } if (Parameters.UNANSWERED.equals(type)) { whereCause += " AND X.numReplies = 0 "; } if (Parameters.ANSWERED.equals(type)) { whereCause += " AND X.numReplies > 0 "; } if (!StringUtil.isNull(subjectId) && !"-1".equals(subjectId)) { whereCause += " AND X.subjectId = " + subjectId; } else { if (StringUtil.isNull(subjects)) { whereCause += " AND FIND_IN_SET(X.subjectId , (SELECT defaultSubjectId FROM Sib_Users where userid = " + userId + " ))"; } else { whereCause += " AND FIND_IN_SET(X.subjectId , '" + subjects + "')"; } } Object[] queryParams = {}; boolean status = true; whereCause += " ORDER BY X.datetime DESC "; if (!StringUtil.isNull(limit)) { whereCause += " LIMIT " + limit; } if (!StringUtil.isNull(offset)) { whereCause += " OFFSET " + offset; } List<Object> readObject = dao.readObjectsWhereClause( SibConstants.SqlMapper.SQL_GET_ALL_QUESTION_MENTOR_BY_SUBJ, whereCause, queryParams); simpleResponse = new SimpleResponse("" + status, request.getRequest_data_type(), request.getRequest_data_method(), readObject); } catch (DAOException e) { simpleResponse = new SimpleResponse(SibConstants.FAILURE, request.getRequest_data_type(), request.getRequest_data_method(), e.getMessage()); } ResponseEntity<Response> entity = new ResponseEntity<Response>(simpleResponse, HttpStatus.OK); return entity; }From source file:ee.ria.xroad.asyncdb.AsyncLogWriter.java
/** * Appends request to asynchonous requests log. * * @param requestInfo - request to append * @param lastSendResult - result (success or failure) of last sending * @param firstRequestSendCount - how many times first request in the queue * has been tried to send. * @throws Exception - when writing into log fails *///from w w w . j a va 2s. c om public void appendToLog(RequestInfo requestInfo, String lastSendResult, int firstRequestSendCount) throws Exception { String info = String.format( "Appending to asynclog -lastSendResult: '%s', first request " + "send count: '%d' and request info: '%s'", lastSendResult, firstRequestSendCount, requestInfo); log.info(info); StringBuilder sb = new StringBuilder(); String currentTimeInTimestampSeonds = dateToSecondsString(new Date()); log.debug("Current date in timestamp seconds: '{}'", currentTimeInTimestampSeonds); sb.append(currentTimeInTimestampSeonds).append(FIELD_SEPARATOR); sb.append(dateToSecondsString(requestInfo.getReceivedTime())).append(FIELD_SEPARATOR); String removedTime = requestInfo.getRemovedTime() != null ? dateToSecondsString(requestInfo.getRemovedTime()) : "0"; sb.append(removedTime).append(FIELD_SEPARATOR); sb.append(lastSendResult).append(FIELD_SEPARATOR); sb.append(firstRequestSendCount).append(FIELD_SEPARATOR); sb.append(provider.toShortString()).append(FIELD_SEPARATOR); sb.append(requestInfo.getSender()).append(FIELD_SEPARATOR); sb.append(requestInfo.getUser()).append(FIELD_SEPARATOR); sb.append(requestInfo.getService()).append(FIELD_SEPARATOR); String requestIdEscaped = StringEscapeUtils.escapeJava(requestInfo.getId()); sb.append(requestIdEscaped); sb.append('\n'); final String logFileLine = sb.toString(); log.debug("Log file line: '{}'", logFileLine); Callable<Object> task = () -> { String logFilePath = getLogFilePath(); log.info("Async-log for provider '{}' written to '{}'", provider, logFilePath); FileUtils.write(new File(logFilePath), logFileLine, StandardCharsets.UTF_8, true); return null; }; AsyncDBUtil.performLocked(task, getLogFilePath(), this); }From source file:com.blackducksoftware.integration.eclipseplugin.internal.listeners.NewJavaProjectListener.java
@Override public void resourceChanged(final IResourceChangeEvent event) { if (event.getSource() != null && event.getSource().equals(ResourcesPlugin.getWorkspace()) && event.getDelta() != null) { final IResourceDelta[] childrenDeltas = event.getDelta().getAffectedChildren(); if (childrenDeltas != null) { for (final IResourceDelta delta : childrenDeltas) { if (delta.getKind() == IResourceDelta.ADDED || delta.getKind() == IResourceDelta.CHANGED) { if (delta.getResource() != null) { final IResource resource = delta.getResource(); try { if (resource instanceof IProject && ((IProject) resource).hasNature(JavaCore.NATURE_ID)) { final String projectName = resource.getName(); service.setAllProjectSpecificDefaults(projectName); Job inspectionJob = null; if ((delta.getFlags() | IResourceDelta.MOVED_FROM) != 0 && delta.getMovedFromPath() != null) { String[] movedFromPath = delta.getMovedFromPath().toOSString() .split(StringEscapeUtils.escapeJava(File.separator)); String oldProjectName = movedFromPath[movedFromPath.length - 1]; inspectionJob = information.createInspection(projectName, true); if (service.isActivated(oldProjectName)) { service.activateProject(projectName); }//from ww w . j av a 2s. c o m } else { inspectionJob = information.createInspection(projectName, true); } if (inspectionJob != null) { final Job delayedInspection = inspectionJob; Job delayer = new Job(DELAYED_INSPECTION_JOB_PREFIX + projectName) { @Override public boolean belongsTo(Object family) { return family.equals(DELAYED_INSPECTION_JOB); } @Override protected IStatus run(IProgressMonitor monitor) { IJobManager jobMan = Job.getJobManager(); Job[] delayedInspections = jobMan.find(DELAYED_INSPECTION_JOB); for (Job delayedInspection : delayedInspections) { if (delayedInspection.getName().equals(this.getName())) { // Kill stale jobs delayedInspection.cancel(); } } Job[] inspections = jobMan .find(ProjectDependencyInformation.INSPECTION_JOB); monitor.setTaskName("Waiting for active inspection to finish"); while (inspections.length > 0) { try { inspections[0].join(); } catch (InterruptedException e) { // Do nothing, a missed scan is nbd } inspections = jobMan .find(ProjectDependencyInformation.INSPECTION_JOB); } delayedInspection.schedule(); return Status.OK_STATUS; } }; delayer.schedule(); } } } catch (final CoreException e) { /* * If error is thrown when calling hasNature(), then assume it isn't a Java * project and therefore don't do anything */ } } } } } } }From source file:de.fraunhofer.sciencedataamanager.beans.SystemInstanceNew.java
/** * This method creates a new connector.// w w w.j a va 2s . c o m * * @throws IOException during database access. */ public void createNewSystemInstance() throws IOException { try { SystemInstance systemInstance = new SystemInstance(); systemInstance.setName(getSystemInstanceName()); systemInstance.setGroovyCode(StringEscapeUtils.escapeJava(getSystemInstanceGroovyCode())); systemInstance.setSearchFieldMappings(searchFieldMappings); SystemInstanceDataManager systemInstanceDataProvider = new SystemInstanceDataManager( applicationConfiguration); systemInstanceDataProvider.insert(systemInstance); FacesContext.getCurrentInstance().getExternalContext().redirect("index.xhtml"); } catch (Exception ex) { Logger.getLogger(this.getClass().getName()).log(Level.SEVERE, null, ex); this.applicationConfiguration.getLoggingManager().logException(ex); } }From source file:com.esri.geoportal.commons.csw.client.impl.CapabilitiesParse.java
@Override public void endElement(String uri, String localName, String qName) throws SAXException { if (localName.equals("")) { localName = qName;/*from w ww. java 2 s. c o m*/ } LOG.finer("TEXT IN ELEMENT " + StringEscapeUtils.escapeJava(text.toString())); LOG.finer("ELEMENT END " + StringEscapeUtils.escapeJava(localName)); try { text = new StringBuffer(chkStr(text.toString())); if (capabilities && getRecords && post && constraint && localName.equalsIgnoreCase("Value") && text.toString().equalsIgnoreCase("XML") && getRecordsList.peek() != null) { cap.set_getRecordsPostURL(getRecordsList.pop().toString()); } else if (capabilities && getRecords && post && constraint && localName.equalsIgnoreCase("Value") && !text.toString().equalsIgnoreCase("XML") && getRecordsList.peek() != null) { getRecordsList.pop(); } if (capabilities && getRecords && localName.equalsIgnoreCase("HTTP") && getRecordsList.peek() != null) { String tmp = chkStr(cap.get_getRecordsPostURL()); if ("".equals(tmp)) { cap.set_getRecordsPostURL(getRecordsList.pop().toString()); } } if (capabilities && localName.equalsIgnoreCase("Abstract")) { cap.setAbstractText(text.toString()); } if (capabilities && localName.equalsIgnoreCase("Title")) { cap.setTitle(text.toString()); } } catch (Throwable e) { LOG.log(Level.FINER, "Error while getting getrecords url", e); } tracking(localName, false); }From source file:madgik.exareme.master.queryProcessor.analyzer.stat.ExternalStat.java
@Override public Map<String, Table> extractStats() throws Exception { DatabaseMetaData dbmd = con.getMetaData(); // dtabase metadata object // listing tables and columns String catalog = null;//from w ww . j a v a 2 s .c om String schemaPattern = sch; String tableNamePattern = tblName; String columnNamePattern = "%"; if (con.getClass().getName().contains("postgresql")) { // tableNamePattern="\""+tableNamePattern+"\""; schemaPattern = "public"; } // ResultSet resultTables = dbmd.getTables(catalog, "public", // tableNamePattern, types); ResultSet resultColumns = dbmd.getColumns(catalog, schemaPattern, tableNamePattern, columnNamePattern); if (con.getClass().getName().contains("postgresql")) { tableNamePattern = "\"" + tableNamePattern + "\""; } else if (con.getClass().getName().contains("oracle")) { tableNamePattern = schemaPattern + "." + tableNamePattern; } log.debug("Starting extracting stats"); // while (resultTables.next()) { Map<String, Column> columnMap = new HashMap<String, Column>(); // StringEscapeUtils.escapeJava(resultTables.getString(3)); log.debug("Analyzing table " + tblName); int toupleSize = 0; // in bytes // tableNamePattern = tableName; int columnCount = resultColumns.getMetaData().getColumnCount(); Statement st = con.createStatement(); ResultSet rs = st.executeQuery("select count(*) from " + tableNamePattern); int count = 0; if (rs.next()) { count = rs.getInt(1); } else { log.error("could not get count for table " + tableNamePattern); } rs.close(); st.close(); ResultSet pkrs = dbmd.getExportedKeys("", "", tblName); String pkey = "DEFAULT_KEY"; while (pkrs.next()) { pkey = pkrs.getString("PKCOLUMN_NAME"); break; } pkrs.close(); if (count == 0) { log.debug("Empty table"); Table t = new Table(tblName, columnCount, toupleSize, columnMap, count, pkey); schema.put(tblName, t); return schema; } while (resultColumns.next()) { String columnName = StringEscapeUtils.escapeJava(resultColumns.getString(4)); try { String colNamePattern = columnName; if (con.getClass().getName().contains("postgresql")) { colNamePattern = "\"" + columnName + "\""; } int columnType = resultColumns.getInt(5); // computing column's size in bytes int columnSize = computeColumnSize(colNamePattern, columnType, tableNamePattern); toupleSize += columnSize; // execute queries for numberOfDiffValues, minVal, maxVal // Map<String, Integer> diffValFreqMap = new HashMap<String, // Integer>(); // computing column's min and max values String minVal = "0"; String maxVal = "0"; if (columnType != Types.BLOB) { MinMax mm = computeMinMax(tableNamePattern, colNamePattern); minVal = mm.getMin(); maxVal = mm.getMax(); } Map<String, Integer> diffValFreqMap = new HashMap<String, Integer>(); //only for equidepth! // for (ValFreq k : freqs) { // diffValFreqMap.put(k.getVal(), k.getFreq()); // } // /add min max diff vals in the sampling values int minOcc = 1; int maxOcc = 1; int diffVals = 0; boolean equidepth = false; if (equidepth) { //diffValFreqMap is used only in equidepth, do not compute it //if we have primitive diffValFreqMap = computeDistinctValuesFrequency(tableNamePattern, colNamePattern); String minValChar = minVal; String maxValChar = maxVal; if (columnType == Types.VARCHAR || columnType == Types.CHAR || columnType == Types.LONGNVARCHAR || columnType == Types.DATE) { minValChar = "\'" + minVal + "\'"; maxValChar = "\'" + maxVal + "\'"; } try { minOcc = computeValOccurences(tableNamePattern, colNamePattern, minValChar); } catch (Exception e) { log.error("Could not compute value occurences for column:" + colNamePattern + " and value:" + minValChar); } if (equidepth && !diffValFreqMap.containsKey(minVal)) diffValFreqMap.put(minVal, minOcc); try { maxOcc = computeValOccurences(tableNamePattern, colNamePattern, maxValChar); } catch (Exception e) { log.error("Could not compute value occurences for column:" + colNamePattern + " and value:" + maxValChar); } if (diffValFreqMap.containsKey(maxVal)) diffValFreqMap.put(maxVal, maxOcc); diffVals = diffValFreqMap.size(); } else { diffVals = computeDiffVals(tableNamePattern, colNamePattern, columnType); } if (diffVals == 0) { //all values are null! continue; } Column c = new Column(columnName, columnType, columnSize, diffVals, minVal, maxVal, diffValFreqMap); columnMap.put(columnName, c); } catch (Exception ex) { log.error("could not analyze column " + columnName + ":" + ex.getMessage()); } } Table t = new Table(tblName, columnCount, toupleSize, columnMap, count, pkey); schema.put(tblName, t); // } // resultTables.close(); resultColumns.close(); return schema; }From source file:madgik.exareme.master.queryProcessor.analyzer.fanalyzer.FederatedAnalyzer.java
private Map<String, Set<String>> specifyTables() throws Exception { Map<String, Set<String>> info = new HashMap<String, Set<String>>(); DatabaseMetaData dbmd = con.getMetaData(); // dtabase metadata object // listing tables and columns String catalog = null;/* www .ja v a2s . c om*/ String schemaPattern = null; String tableNamePattern = null; String[] types = null; String columnNamePattern = null; ResultSet resultTables = dbmd.getTables(catalog, schemaPattern, tableNamePattern, types); while (resultTables.next()) { String tableName = StringEscapeUtils.escapeJava(resultTables.getString(3)); if (tableName.contains("_sample")) break; if (tableName.equals("sqlite_stat1")) continue; tableNamePattern = tableName; ResultSet resultColumns = dbmd.getColumns(catalog, schemaPattern, tableNamePattern, columnNamePattern); Set<String> columns = new HashSet<String>(); while (resultColumns.next()) { String columnName = StringEscapeUtils.escapeJava(resultColumns.getString(4)); columns.add(columnName); } info.put(tableName, columns); } return info; }From source file:edu.ksu.cis.santos.mdcf.dml.ast.AstNode.java
private void toString(final StringBuilder sb, final Object o) { if (o instanceof AstNode) { final AstNode n = (AstNode) o; final String name = n.getClass().getSimpleName(); sb.append(Character.toLowerCase(name.charAt(0))); sb.append(name.substring(1));// ww w. j a v a2 s.c om sb.append('('); final Object[] children = n.children(); final int len = children.length; for (int i = 0; i < len; i++) { toString(sb, children[i]); if (i != (len - 1)) { sb.append(", "); } } sb.append(')'); } else if (o instanceof List) { final List<?> l = (List<?>) o; sb.append("list("); final int size = l.size(); for (int i = 0; i < size; i++) { toString(sb, l.get(i)); if (i != (size - 1)) { sb.append(", "); } } sb.append(')'); } else if (o instanceof Optional) { final Optional<?> opt = (Optional<?>) o; if (opt.isPresent()) { sb.append("some("); toString(sb, opt.get()); sb.append(')'); } else { sb.append("none()"); } } else if (o instanceof String) { final String s = (String) o; sb.append('"'); sb.append(StringEscapeUtils.escapeJava(s)); sb.append('"'); } else if (o instanceof Enum) { final Enum<?> e = (Enum<?>) o; sb.append(e.getClass().getSimpleName()); sb.append('.'); sb.append(e.toString()); } else { sb.append(o); } }From source file:com.github.xbn.text.CharUtil.java
public static final String getVisible(Character chr) { if (chr == null) { return "null"; }// ww w . j a va2s .c om return StringEscapeUtils.escapeJava(chr.toString()); }From source file:com.cloudbees.hudson.plugins.folder.computed.EventOutputStreamsTest.java
public void test(final boolean aFlush, final boolean bFlush) throws Exception { final File file = work.newFile(); final EventOutputStreams instance = new EventOutputStreams(new EventOutputStreams.OutputFile() { @NonNull/* w w w.ja v a 2s.c o m*/ @Override public File get() { return file; } }, 250, TimeUnit.MILLISECONDS, 8192, false, Long.MAX_VALUE, 0); Thread t1 = new Thread() { public void run() { OutputStream os = instance.get(); try { PrintWriter pw = new PrintWriter(os, aFlush); for (int i = 0; i < 10000; i += 1) { pw.println(String.format("%1$05dA", i)); } pw.flush(); } catch (Throwable e) { e.printStackTrace(System.err); } finally { IOUtils.closeQuietly(os); } } }; Thread t2 = new Thread() { public void run() { OutputStream os = instance.get(); try { PrintWriter pw = new PrintWriter(os, bFlush); for (int i = 0; i < 10000; i += 1) { pw.println(String.format("%1$05dB", i)); } pw.flush(); } catch (Throwable e) { e.printStackTrace(System.err); } finally { IOUtils.closeQuietly(os); } } }; t1.start(); t2.start(); t1.join(); t2.join(); List<String> as = new ArrayList<String>(); List<String> bs = new ArrayList<String>(); for (String line : FileUtils.readLines(file)) { assertThat("Line does not have both thread output: '" + StringEscapeUtils.escapeJava(line) + "'", line.matches("^\\d+[AB](\\d+[AB])+$"), is(false)); assertThat("Line does not contain a null character: '" + StringEscapeUtils.escapeJava(line) + "'", line.indexOf(0), is(-1)); if (line.endsWith("A")) { as.add(line); } else if (line.endsWith("B")) { bs.add(line); } else { fail("unexpected line: '" + StringEscapeUtils.escapeJava(line) + "'"); } } List<String> sorted = new ArrayList<String>(as); Collections.sort(sorted); assertThat(as, is(sorted)); sorted = new ArrayList<String>(bs); Collections.sort(sorted); assertThat(bs, is(sorted)); }