Example usage for org.apache.commons.text StringEscapeUtils escapeJson

List of usage examples for org.apache.commons.text StringEscapeUtils escapeJson

Introduction

In this page you can find the example usage for org.apache.commons.text StringEscapeUtils escapeJson.

Prototype

public static final String escapeJson(final String input) 

Source Link

Document

Escapes the characters in a String using Json String rules.

Escapes any values it finds into their Json String form.

Usage

From source file:com.jwebmp.core.utilities.EscapeChars.java

/**
 * Escapes characters for text appearing as data in the
 *
 * @param input//from  w w  w  .j a v a  2  s  .com
 *
 * @return
 */
public static String forJSON(String input) {
    return StringEscapeUtils.escapeJson(input);
}

From source file:fr.inrialpes.exmo.align.service.msg.Message.java

public String getJSONContent() {
    return StringEscapeUtils.escapeJson(content);
}

From source file:com.seleniumtests.util.StringUtility.java

/**
 * Encode string according to provided format
 * @param message      message to encode
 * @param format      'xml', 'csv', 'html', 'json', 'text'. the later does not change anything
 * @return//from   w w  w  .j  ava2 s  . com
 */
public static String encodeString(String message, String format) {
    String newMessage;
    switch (format) {
    case "xml":
        newMessage = StringEscapeUtils.escapeXml11(message);
        break;
    case "csv":
        newMessage = StringEscapeUtils.escapeCsv(message);
        break;
    case "html":
        newMessage = StringEscapeUtils.escapeHtml4(message);
        break;
    case "json":
        newMessage = StringEscapeUtils.escapeJson(message);
        break;
    case "text":
        newMessage = message;
        break;
    default:
        throw new CustomSeleniumTestsException("only escaping of 'xml', 'html', 'csv', 'json' is allowed");
    }
    return newMessage;
}

From source file:net.metanotion.json.JsonWriter.java

@Override
public Handler<T> key(final String key) {
    try {//  ww  w. j  a va  2  s .c  o m
        out.append(QUOTE + StringEscapeUtils.escapeJson(key) + QUOTE);
        out.append(COLON);
        return this;
    } catch (final IOException ioe) {
        throw new RuntimeException(ioe);
    }
}

From source file:net.metanotion.json.JsonWriter.java

@Override
public Handler<T> string(final String val) {
    try {/*  ww  w.  j  a va2s .com*/
        out.append(QUOTE + StringEscapeUtils.escapeJson(val) + QUOTE);
        return this;
    } catch (final IOException ioe) {
        throw new RuntimeException(ioe);
    }
}

From source file:net.metanotion.multitenant.adminapp.Manager.java

@Override
public InstanceList reassignOwner(final UserToken uid, final SecureString password, final long tenantId,
        final String newOwnerEmail) throws Exception {
    checkAuth(pw, uid, password);/*from   w  ww .  java2 s  .c  om*/
    final String instancePrefix = getInstancePrefix(tenantId);
    return JDBCTransaction.doTX(adminDS, new Block<Connection, InstanceList>() {
        @Override
        public InstanceList eval(final Connection conn) throws Exception {
            if (tenantQueries.reassignOwner(conn, tenantId, uid.getID(), newOwnerEmail) > 0) {
                try {
                    mailer.setAsOwner(newOwnerEmail, instancePrefix);
                } catch (final Exception ex) {
                    logger.error("{}", ex);
                }
                try {
                    mailer.reassignedOwnership(AuthUtils.lookupUsername(pw, uid), instancePrefix);
                } catch (final Exception ex) {
                    logger.error("{}", ex);
                }
                try {
                    tenantQueries.logEvent(conn, tenantId, uid.getID(), AuthUtils.lookupUsername(pw, uid),
                            "{ \"action\": \"reassignOwner\", \"data\": { \"newOwner\": [ \""
                                    + StringEscapeUtils.escapeJson(newOwnerEmail) + "\" ] }}");
                } catch (final Exception ex) {
                    logger.error("{}", ex);
                }
                return new InstanceList(tenantQueries.getInstance(conn, uid.getID(), tenantId));
            } else {
                final long ownerId = tenantQueries.getOwner(conn, tenantId);
                if (ownerId != uid.getID()) {
                    throw new RuntimeException("Invalid owner.");
                } else if (pw.getIdentity(newOwnerEmail) == null) {
                    throw new RuntimeException("No such user.");
                } else {
                    throw new RuntimeException();
                }
            }
        }
    });
}

From source file:net.metanotion.multitenant.adminapp.Manager.java

@Override
public AdminAccount addAdmin(final Connection conn, final long tenantId, final UserToken uid,
        final SecureString password, final String email) throws Exception {
    checkAuth(pw, uid, password);//w w  w  .  ja  v a  2s.c om
    final String instancePrefix = getInstancePrefix(tenantId);
    if (tenantQueries.addAdmin(conn, tenantId, email) > 0) {
        try {
            mailer.addAdmin(email, instancePrefix);
        } catch (final Exception ex) {
            logger.error("{}", ex);
        }
        try {
            tenantQueries.logEvent(conn, tenantId, uid.getID(), AuthUtils.lookupUsername(pw, uid),
                    "{ \"action\": \"addAdministrator\", \"data\": { \"administrators\": [ \""
                            + StringEscapeUtils.escapeJson(email) + "\" ] }}");
        } catch (final Exception ex) {
            logger.error("{}", ex);
        }
        return tenantQueries.getTenantAdmin(conn, tenantId, email).get(0);
    } else {
        throw new RuntimeException();
    }
}

From source file:net.metanotion.multitenant.adminapp.Manager.java

@Override
public Object removeAdmin(final Connection conn, final long tenantId, final UserToken uid,
        final SecureString password, final String email) throws Exception {
    checkAuth(pw, uid, password);/*from w ww. j av  a2 s .  c  o  m*/
    final String instancePrefix = getInstancePrefix(tenantId);
    if (uid instanceof CredentialedUserToken) {
        if (email.equals(((CredentialedUserToken) uid).getCredential().toString())) {
            logger.debug("Can't remove yourself as an admin");
            // TO DO a better choice in exceptions.
            throw new RuntimeException();
        }
    }
    if (tenantQueries.deleteAdmin(conn, tenantId, email) > 0) {
        try {
            mailer.removeAdmin(email, instancePrefix);
        } catch (final Exception ex) {
            logger.error("{}", ex);
        }
        try {
            tenantQueries.logEvent(conn, tenantId, uid.getID(), AuthUtils.lookupUsername(pw, uid),
                    "{ \"action\": \"removeAdministrator\", \"data\": { \"administrators\": [ \""
                            + StringEscapeUtils.escapeJson(email) + "\" ] }}");
        } catch (final Exception ex) {
            logger.error("{}", ex);
        }
        return SUCCESS;
    } else {
        throw new RuntimeException();
    }
}

From source file:net.metanotion.multitenant.adminapp.Manager.java

@Override
public Object addUser(final long tenantId, final UserToken uid, final String username) throws Exception {
    final String instancePrefix = getInstancePrefix(tenantId);
    final UserManagement um = mt.getInstance(instancePrefix).lookupInterface(UserManagement.class);
    logger.debug("Tenant: {} add user {}", tenantId, username);
    final ArrayList<String> accts = new ArrayList<>();
    accts.add(username);/*from   w ww.  ja v a2 s.c  o  m*/
    if (um.addAccounts(accts).size() == 0) {
        try (final Connection conn = adminDS.getConnection()) {
            tenantQueries.logEvent(conn, tenantId, uid.getID(), AuthUtils.lookupUsername(pw, uid),
                    "{ \"action\": \"addUser\", \"data\": { \"users\": [ \""
                            + StringEscapeUtils.escapeJson(username) + "\" ] }}");
        } catch (final Exception ex) {
            logger.error("{}", ex);
        }
        return SUCCESS;
    } else {
        throw new RuntimeException();
    }
}

From source file:net.metanotion.multitenant.adminapp.Manager.java

@Override
public InstanceExport.Status startImport(final long tenantId, final UserToken uid, final SecureString password,
        final long exportId) throws Exception {
    checkAuth(pw, uid, password);/*from   www . ja v  a  2 s .  c  om*/
    final String instancePrefix = getInstancePrefix(tenantId);
    final InstanceExport ie = mt.getInstance(instancePrefix).lookupInterface(InstanceExport.class);
    mailer.restoreInstanceFromExport(AuthUtils.lookupUsername(pw, uid), instancePrefix);
    try (final Connection conn = adminDS.getConnection()) {
        final long ownerId = tenantQueries.getOwner(conn, tenantId);
        if (ownerId != uid.getID()) {
            mailer.restoreInstanceFromExport(tenantQueries.getOwnerEmail(conn, ownerId), instancePrefix);
        }
        try {
            final InstanceExport.Entry e = findFile(ie, exportId);
            tenantQueries.logEvent(conn, tenantId, uid.getID(), AuthUtils.lookupUsername(pw, uid),
                    "{ \"action\": \"importInstance\", \"data\": { \"exportId\": " + Long.toString(exportId)
                            + ", \"exportFile\": \"" + StringEscapeUtils.escapeJson(e.filename) + "\""
                            + ", \"exportDesc\": \"" + StringEscapeUtils.escapeJson(e.description) + "\" }}");
        } catch (final Exception ex) {
            logger.error("{}", ex);
        }
    }
    return ie.initiateImport(exportId);
}