com.esri.gpt.server.erosfeed
Class ErosQueryServlet
java.lang.Object
javax.servlet.GenericServlet
javax.servlet.http.HttpServlet
com.esri.gpt.framework.context.BaseServlet
com.esri.gpt.control.georss.RestQueryServlet
com.esri.gpt.server.erosfeed.ErosQueryServlet
- All Implemented Interfaces:
- Serializable, Servlet, ServletConfig
- Direct Known Subclasses:
- ErosPublicQueryServlet
public class ErosQueryServlet
- extends RestQueryServlet
Eros query servlet.
- See Also:
- Serialized Form
Method Summary |
protected String |
decodeKind(ResourceIdentifier resourceIdentifier,
String kind,
String url)
|
protected void |
execute(HttpServletRequest request,
HttpServletResponse response,
RequestContext context)
Processes the HTTP request. |
protected SearchResult |
executeQuery1(HttpServletRequest request,
RequestContext context,
MessageBroker messageBroker,
RestQuery query)
Execute Query that returns a SearchResult object (SearchResult as opposed
to the SearchResultRecord which executeQuery does). |
protected SearchResult |
executeRepoQuery(HttpServletRequest request,
RequestContext context,
MessageBroker messageBroker,
RestQuery query,
Date after,
Date before)
|
void |
init(ServletConfig config)
Initializes the servlet. |
protected boolean |
isPublic()
|
protected FeedWriter |
makeFeedWriter(HttpServletRequest request,
RequestContext context,
PrintWriter printWriter,
MessageBroker messageBroker,
RestQuery query)
Makes a writer capable of generating an appropriate response based upon the
requested response format. |
protected RestQuery |
parseRequest(HttpServletRequest request,
RequestContext context)
Parses the request and generates a populated query suitable for execution. |
Methods inherited from class com.esri.gpt.framework.context.BaseServlet |
authenticate, doGet, doPost, getCredentials, getLogger, getParameterValue, getRealm, readInputCharacters, writeCharacterResponse, writeHtmlResponse, writeXmlResponse |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ErosQueryServlet
public ErosQueryServlet()
init
public void init(ServletConfig config)
throws ServletException
- Description copied from class:
RestQueryServlet
- Initializes the servlet.
Init parameter "bundleBaseName" is read for
message configuration.
- Specified by:
init
in interface Servlet
- Overrides:
init
in class RestQueryServlet
- Parameters:
config
- the servlet configuration
- Throws:
ServletException
- if an exception occurs
execute
protected void execute(HttpServletRequest request,
HttpServletResponse response,
RequestContext context)
throws Exception
- Description copied from class:
RestQueryServlet
- Processes the HTTP request.
- Overrides:
execute
in class RestQueryServlet
- Parameters:
request
- the HTTP request.response
- HTTP response.context
- request context
- Throws:
Exception
- if an exception occurs
isPublic
protected boolean isPublic()
parseRequest
protected RestQuery parseRequest(HttpServletRequest request,
RequestContext context)
- Description copied from class:
RestQueryServlet
- Parses the request and generates a populated query suitable for execution.
This method essentially uses URL key-value pairs to generate filter and
response components for a rest based query.
This method is the primary extensibility point for the rest API. Code
example for this method given below for reference during extension.
RestQuery query = new RestQuery();
RestQueryParser parser = new RestQueryParser(request,context,query);
parser.parseRepositoryId("rid");
parser.parseResponseFormat("f");
parser.parseResponseGeometry("geometryType");
parser.parseResponseStyle("style");
parser.parseResponseTarget("target");
parser.parseStartRecord("start",1);
parser.parseMaxRecords("max",10);
parser.parsePropertyIsEqualTo("uuid","uuid");
parser.parsePropertyIsLike("searchText","anytext");
parser.parsePropertyList("contentType","dc:type",",",true);
parser.parsePropertyList("dataCategory","dc:subject",",",true);
parser.parsePropertyRange("after","before","dct:modified");
parser.parseSpatialClause("bbox","spatialRel","geometry");
parser.parseSortables("orderBy");
return query;
- Overrides:
parseRequest
in class RestQueryServlet
- Parameters:
request
- the HTTP requestcontext
- the request context
- Returns:
- the populated rest query
executeQuery1
protected SearchResult executeQuery1(HttpServletRequest request,
RequestContext context,
MessageBroker messageBroker,
RestQuery query)
throws SearchException
- Description copied from class:
RestQueryServlet
- Execute Query that returns a SearchResult object (SearchResult as opposed
to the SearchResultRecord which executeQuery does).
- Overrides:
executeQuery1
in class RestQueryServlet
- Parameters:
request
- the requestcontext
- the contextmessageBroker
- the message brokerquery
- the query
- Returns:
- the search result
- Throws:
SearchException
- the search exception
executeRepoQuery
protected SearchResult executeRepoQuery(HttpServletRequest request,
RequestContext context,
MessageBroker messageBroker,
RestQuery query,
Date after,
Date before)
throws SearchException
- Throws:
SearchException
decodeKind
protected String decodeKind(ResourceIdentifier resourceIdentifier,
String kind,
String url)
makeFeedWriter
protected FeedWriter makeFeedWriter(HttpServletRequest request,
RequestContext context,
PrintWriter printWriter,
MessageBroker messageBroker,
RestQuery query)
- Description copied from class:
RestQueryServlet
- Makes a writer capable of generating an appropriate response based upon the
requested response format.
- Overrides:
makeFeedWriter
in class RestQueryServlet
- Parameters:
request
- the HTTP requestcontext
- the request contextprintWriter
- the underlying print writermessageBroker
- the message brokerquery
- the query
- Returns:
- the appropriate writer
Copyright 2011 Environmental Systems Research Institute.
All rights reserved.
Use is subject to
license terms.