cloudant/sync-android — pull request #12 by dongshengbc (2014-03-03 17:41:35+00:00)
Title: 27990 Add Filtered Pull Replication

# Add "PullReplication" and "PushReplication" to manage information
about a pull or push replication.
# Add "Replication.Filter" class; "PullReplication" includes a member
variable "Filter" so allow client to specify a "Filter" for "PullReplication".
Here is how to create a replication for filtered pull replication:

```java
PullReplication pullReplication = new PullReplication();
pullReplication.source = "http://blah/blog/blag";;
pullReplication.target = datastore;
pullReplication.username = "username";
pullReplication.password = "password";
pullReplication.filter = new Replication.Filter("filterFunctionName", ImmutableMap.of("key", "value"))

Replicator replication = factory.oneway(pullReplication);
```

# Constructors for "BasicPull/PushStrategy" has been updated to take
"PullReplication" and "PushReplication" as parameters.
This changes makes it a little harder to inject dependency to
BasicPull/PushStrategy. Right now, those fields are marked as package
private so test classes can access them directly.