Package com.google.refine.commands.expr

Source Code of com.google.refine.commands.expr.ToggleStarredExpressionCommand

package com.google.refine.commands.expr;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.json.JSONWriter;

import com.google.refine.ProjectManager;
import com.google.refine.commands.Command;
import com.google.refine.preference.TopList;

public class ToggleStarredExpressionCommand extends Command {

    @Override
    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String expression = request.getParameter("expression");

        TopList starredExpressions = ((TopList) ProjectManager.singleton.getPreferenceStore().get(
                "scripting.starred-expressions"));

        if (starredExpressions.getList().contains(expression)) {
            starredExpressions.remove(expression);
        } else {
            starredExpressions.add(expression);
        }

        if(request.getParameter("returnList") != null) {
            try {
                response.setCharacterEncoding("UTF-8");
                response.setHeader("Content-Type", "application/json");

                JSONWriter writer = new JSONWriter(response.getWriter());
                writer.object();
                writer.key("expressions");
                writer.array();
                for (String s : starredExpressions) {
                    writer.object();
                    writer.key("code");
                    writer.value(s);
                    writer.endObject();
                }
                writer.endArray();
                writer.endObject();
            } catch (Exception e) {
                respondException(response, e);
            }
        }
    }
}
TOP

Related Classes of com.google.refine.commands.expr.ToggleStarredExpressionCommand

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.