Example usage for org.apache.commons.lang3 StringEscapeUtils escapeJava

List of usage examples for org.apache.commons.lang3 StringEscapeUtils escapeJava

Introduction

In this page you can find the example usage for org.apache.commons.lang3 StringEscapeUtils escapeJava.

Prototype

public static final String escapeJava(final String input) 

Source Link

Document

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));
}