## org.apache.lucene.replicator.http
Class ReplicationService

    java.lang.Object
      org.apache.lucene.replicator.http.ReplicationService

    public class ReplicationService

extends Object

A server-side service for handling replication requests. The service assumes requests are sent in the format `/<context>/<shard>/<action>` where

- `context` is the servlet context, e.g. `REPLICATION_CONTEXT`
- `shard` is the ID of the shard, e.g. "s1"
- `action` is one of `ReplicationService.ReplicationAction` values

For example, to check whether there are revision updates for shard "s1" you should send the request: `http://host:port/replicate/s1/update`.

This service is written like a servlet, and `perform(HttpServletRequest, HttpServletResponse)` takes servlet request and response accordingly, so it is quite easy to embed in your application's servlet.

WARNING: This API is experimental and might change in incompatible ways in the next release.

Nested Class Summary
`static class` `ReplicationService.ReplicationAction` Actions supported by the `ReplicationService`.

Field Summary
`static String` `REPLICATE_FILENAME_PARAM` Request parameter name for providing the file's name.
`static String` `REPLICATE_SESSION_ID_PARAM` Request parameter name for providing a session ID.
`static String` `REPLICATE_SOURCE_PARAM` Request parameter name for providing the file's source.
`static String` `REPLICATE_VERSION_PARAM` Request parameter name for providing the revision version.
`static String` `REPLICATION_CONTEXT` The context path for the servlet.

Constructor Summary
`ReplicationService(Map<String,Replicator> replicators)`

Method Summary
`void` `perform(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp)` Executes the replication task.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### REPLICATION_CONTEXT

    public static final String REPLICATION_CONTEXT

  The context path for the servlet.

  See Also:
    Constant Field Values

### REPLICATE_VERSION_PARAM

    public static final String REPLICATE_VERSION_PARAM

  Request parameter name for providing the revision version.

  See Also:
    Constant Field Values

### REPLICATE_SESSION_ID_PARAM

    public static final String REPLICATE_SESSION_ID_PARAM

  Request parameter name for providing a session ID.

  See Also:
    Constant Field Values

### REPLICATE_SOURCE_PARAM

    public static final String REPLICATE_SOURCE_PARAM

  Request parameter name for providing the file's source.

  See Also:
    Constant Field Values

### REPLICATE_FILENAME_PARAM

    public static final String REPLICATE_FILENAME_PARAM

  Request parameter name for providing the file's name.

  See Also:
    Constant Field Values

Constructor Detail

### ReplicationService

    public ReplicationService(Map<String,Replicator> replicators)

Method Detail

### perform

    public void perform(javax.servlet.http.HttpServletRequest req,
                        javax.servlet.http.HttpServletResponse resp)
                 throws javax.servlet.ServletException,
                        IOException

  Executes the replication task.

  Throws:
    `javax.servlet.ServletException`
    `IOException`

Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.