RandomSec/src/main/java/com/metaweb/gridworks/commands/GetAllProjectMetadataCommand.java
David Huynh 4ec35cf5bb A few find/replace from gridlock to gridworks.
Added list of existing projects on front page.

git-svn-id: http://google-refine.googlecode.com/svn/trunk@28 7d457c2a-affb-35e4-300a-418c747d4874
2010-02-03 06:23:40 +00:00

44 lines
1.2 KiB
Java

package com.metaweb.gridworks.commands;
import java.io.IOException;
import java.util.Map;
import java.util.Properties;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.json.JSONException;
import org.json.JSONWriter;
import com.metaweb.gridworks.ProjectManager;
import com.metaweb.gridworks.ProjectMetadata;
public class GetAllProjectMetadataCommand extends Command {
@Override
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
response.setCharacterEncoding("UTF-8");
response.setHeader("Content-Type", "application/json");
JSONWriter writer = new JSONWriter(response.getWriter());
Properties options = new Properties();
writer.object();
writer.key("projects"); writer.object();
Map<Long, ProjectMetadata> m = ProjectManager.singleton.getAllProjectMetadata();
for (Long id : m.keySet()) {
writer.key(id.toString());
m.get(id).write(writer, options);
}
writer.endObject();
writer.endObject();
} catch (JSONException e) {
respondException(response, e);
}
}
}