/* * Copyright (c) 2011 LinkedIn, Inc * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package com.flaptor.indextank.api; import com.flaptor.indextank.api.resources.Autocomplete; import com.flaptor.indextank.api.resources.DeleteDocs; import com.flaptor.indextank.api.resources.Docs; import com.flaptor.indextank.api.resources.Search; import com.ghosthack.turismo.action.Action; import com.ghosthack.turismo.routes.RoutesList; public class EmbeddedApiV1 extends RoutesList { protected void map() { get("/indexes/:name/autocomplete", new Autocomplete()); get("/indexes/:name/search", new Search()); put("/indexes/:name/docs", new Docs()); delete("/indexes/:name/docs", new DeleteDocs()); get("/indexes", new Action() { public void run() { // dummy response for embedded server print("{\"idx\": {\"status\": \"LIVE\", \"code\": \"dbajo\", " + "\"started\": true, \"public_search\": true, " + "\"creation_time\": \"2011-04-22T05:37:43\", \"size\": 0}}"); } }); get("/indexes/:name", new Action() { public void run() { // dummy response for embedded server print("{\"status\": \"LIVE\", \"code\": \"dbajo\", " + "\"started\": true, \"public_search\": true, " + "\"creation_time\": \"2011-04-22T05:37:43\", \"size\": 0}"); } }); put("/indexes/:name", new Action() { public void run() { // dummy res().setStatus(204); } }); delete("/indexes/:name", new Action() { public void run() { // dummy res().setStatus(204); } }); } }