All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.directwebremoting.jsonrpc.io.JsonRpcCalls Maven / Gradle / Ivy

Go to download

DWR is easy Ajax for Java. It makes it simple to call Java code directly from Javascript. It gets rid of almost all the boilerplate code between the web browser and your Java code. This version 4.0.2 works with Jakarta Servlet 4.0.2.

The newest version!
package org.directwebremoting.jsonrpc.io;

import java.util.ArrayList;
import java.util.List;

import org.directwebremoting.extend.Calls;
import org.directwebremoting.io.StringWrapper;

/**
 * An extension to the {@link Calls} object to hold JsonRpc version information.
 * @author Joe Walker [joe at getahead dot ltd dot uk]
 */
public class JsonRpcCalls extends Calls
{
    /**
     * A version of {@link #getBatchId()} that returns a StringWrapper so we can
     * return a verbatim string because id is really a variant type in
     * Javascript.
     * @see #getBatchId()
     * @return ...
     */
    public StringWrapper getId()
    {
        return new StringWrapper(getBatchId());
    }

    /**
     * @return The JsonRpc version string as defined in the jsonrpc attribute
     */
    public String getVersion()
    {
        return version;
    }

    /** @param version ...
     * @see #getVersion()
     */
    public void setVersion(String version)
    {
        this.version = version;
    }

    /**
     * If parsing has failed and we should not continue, then we might want to
     * carry on with the parse to get information like the id that is needed
     * for the response, but remembering the error messages
     * @param message ...
     */
    public void addParseError(String message)
    {
        parseErrors.add(message);
    }

    /**
     * Did parsing complete without errors?
     * @return ...
     * @see #addParseError(String)
     */
    public boolean isParseErrorClean()
    {
        return parseErrors.isEmpty();
    }

    /**
     * Get a summary of the parse errors.
     * If there is more than one parse error, then return them all concatenated
     * by a ', '
     * @return ...
     */
    public String getParseErrors()
    {
        StringBuilder buffer = new StringBuilder();
        for (String message : parseErrors)
        {
            if (buffer.length() != 0)
            {
                buffer.append(", ");
            }
            buffer.append(message);
        }
        return buffer.toString();
    }

    /**
     * @see #getVersion()
     */
    private String version = "2.0";

    /**
     * @see #addParseError(String)
     * @see #isParseErrorClean()
     */
    private final List parseErrors = new ArrayList();
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy