示例#1
0
  def setUp(self):
    self.cursor = MagicMock()

    self.trigger = Triggers("my-source-id", "my-uri")
    self.trigger._oplog = MagicMock()
    self.trigger._oplog.find.return_value = self.cursor
    self.trigger._checkpoint = MagicMock()

    self.callback_func = MagicMock()
    self.default_checkpoint = 0L
示例#2
0
  def __init__(self, source_id, source_uri, destinations, *connection_args, **connection_kwargs):
    self._connection = Connection(source_uri, *connection_args, **connection_kwargs)
    self._collection = self._connection.local.mmm
    self.triggers = Triggers(source_id, source_uri, *connection_args, **connection_kwargs)

    aggregate_replicators = {}
    for db_collection in ReplicationEngine.get_replicated_collections(destinations):
      namespace = ".".join(db_collection)
      aggregate_replicator = AggregateReplicator(source_id, source_uri, db_collection[0], db_collection[1])
      aggregate_replicators[namespace] = aggregate_replicator
      self.triggers.register(namespace, "iud", aggregate_replicator)

    for dest in destinations:
      for namespace in dest["namespaces"]:
        source = namespace["source"]
        replicator = Replicator(source_id, dest["id"], dest["uri"], *namespace["dest"].split(".", 1))
        aggregate_replicators[source].register(replicator, namespace["source"], dest.get("operations", "iud"))
示例#3
0
 def setUp(self):
   self.trigger = Triggers("my-source-id", "my-uri")
   self.trigger._oplog = MagicMock()
   self.trigger._checkpoint = MagicMock()