Examples of BlipContentOperation


Examples of org.waveprotocol.wave.model.operation.wave.BlipContentOperation

      WaveAggregateOp composed = compose(op1, op2);

      List<WaveletOperation> expected = Arrays.<WaveletOperation>asList(
          new AddParticipant(CREATOR1_CONTEXT, new ParticipantId(TARGET1)),
          new WaveletBlipOperation("doc", new BlipContentOperation(CREATOR2_CONTEXT, insertDocOp))
      );
      assertEquals(expected, composed.toWaveletOperations());
    }

    // Test compose of document op from the same creator
    {
      DocOp insertDocOp1 = insertDocOp(1, 3);
      DocOp insertDocOp2 = insertDocOp(3, 4);
      DocOp deleteDocOp = deleteDocOp(2, 5);
      WaveAggregateOp op1 = new WaveOpBuilder(CREATOR1_ID).docOp("doc", insertDocOp1).build();
      WaveAggregateOp op2 = new WaveOpBuilder(CREATOR1_ID)
          .docOp("doc", insertDocOp2)
          .docOp("doc", deleteDocOp)
          .build();

      WaveAggregateOp composed = compose(op1, op2);

      DocOp expectedDocOp = new DocOpBuilder()
          .retain(1)
          .characters("a")
          .deleteCharacters("a")
          .characters("a")
          .retain(1)
          .build();

      List<WaveletOperation> expected = Arrays.<WaveletOperation>asList(
          new WaveletBlipOperation("doc", new BlipContentOperation(CREATOR1_CONTEXT, expectedDocOp))
      );
      assertEquals(expected, composed.toWaveletOperations());
    }
  }
View Full Code Here

Examples of org.waveprotocol.wave.model.operation.wave.BlipContentOperation

    }

    private WaveletOperation noOpDocOp(String blipId) {
      WaveletOperationContext context = new WaveletOperationContext(
          clientMock.getParticipantId(), 0L, 1L);
      BlipContentOperation blipOp = new BlipContentOperation(context, (new DocOpBuilder()).build());

      return new WaveletBlipOperation(blipId, blipOp);
    }
View Full Code Here

Examples of org.waveprotocol.wave.model.operation.wave.BlipContentOperation

  private void checkInsert(WaveletOperation operation, int location, String content,
      int remaining) {
    if (operation instanceof WaveletBlipOperation) {
      WaveletBlipOperation waveOp = (WaveletBlipOperation) operation;
      if (waveOp.getBlipOp() instanceof BlipContentOperation) {
        BlipContentOperation blipOp = (BlipContentOperation) waveOp.getBlipOp();
        DocOpBuilder builder = new DocOpBuilder();
        builder.retain(location).characters(content);
        if (remaining > 0) {
            builder.retain(remaining);
        }
        assertTrue(OpComparators.SYNTACTIC_IDENTITY.equal(builder.build(), blipOp.getContentOp()));
        return;
      }
    }
    fail("Did not get an insertion operation.");
  }
View Full Code Here

Examples of org.waveprotocol.wave.model.operation.wave.BlipContentOperation

    if (!docs.containsKey(id)) {
      docs.put(id, DocProviders.POJO.parse("<x></x>"));
    }
    Nindo nindo = Nindo.insertCharacters(1, "hi");
    DocOp op = docs.get(id).consumeAndReturnInvertible(nindo);
    return new WaveletBlipOperation(id, new BlipContentOperation(getContext(timestamp), op));
  }
View Full Code Here

Examples of org.waveprotocol.wave.model.operation.wave.BlipContentOperation

   * Tests that the deltas provided by take() are optimised. Note that this test
   * makes assumptions about what type of deltas are used by
   * {@link OperationQueue} and what operations those deltas merge.
   */
  public void testProducesOptimisedDeltas() {
    queue.add(new WaveletBlipOperation("a", new BlipContentOperation(BOB_A.getContext(),
        new DocOpBuilder().retain(1).characters("hi").retain(1).build())));
    queue.add(new WaveletBlipOperation("a", new BlipContentOperation(BOB_B.getContext(),
        new DocOpBuilder().retain(1).characters("hi").retain(3).build())));
    assertQueueSizeBetween(1, 2);
    assertEquals(1, queue.take().size());
    assertQueueIsEmpty();
  }
View Full Code Here

Examples of org.waveprotocol.wave.model.operation.wave.BlipContentOperation

   */
  public void doInsert(int offset, String chars) throws OperationException {
    Nindo nindo = Nindo.insertCharacters(offset, chars);
    DocOp op = doc.consumeAndReturnInvertible(nindo);

    BlipContentOperation blipOp = new BlipContentOperation(
        new WaveletOperationContext(participantId, 0L, 1), op);
    WaveletBlipOperation wop = new WaveletBlipOperation("blip id", blipOp);
    clientOperations.add(wop);
  }
View Full Code Here

Examples of org.waveprotocol.wave.model.operation.wave.BlipContentOperation

   */
  private void applyOperation(WaveletOperation operation) throws OperationException {
    if (operation instanceof WaveletBlipOperation) {
      WaveletBlipOperation waveOp = (WaveletBlipOperation) operation;
      if (waveOp.getBlipOp() instanceof BlipContentOperation) {
        BlipContentOperation blipOp = (BlipContentOperation) waveOp.getBlipOp();
        doc.consume(blipOp.getContentOp());
      }
    }
  }
View Full Code Here

Examples of org.waveprotocol.wave.model.operation.wave.BlipContentOperation

      return inverse;
    }

    @Override
    public void visitBlipContentOperation(BlipContentOperation op) {
      inverse = new BlipContentOperation(reverseContext, DocOpInverter.invert(op.getContentOp()));
    }
View Full Code Here

Examples of org.waveprotocol.wave.model.operation.wave.BlipContentOperation

  }

  private static void composeDocOps(List<WaveletOperation> operations, String id,
      WaveletOperationContext context, List<DocOp> docOps) {
    operations.add(new WaveletBlipOperation(id,
        new BlipContentOperation(context, Composer.compose(docOps))));
    docOps.clear();
  }
View Full Code Here

Examples of org.waveprotocol.wave.model.operation.wave.BlipContentOperation

   * primitive blip, then boxed as a wave operation and sent to the wavelet
   * adapter.
   */
  private void consume(DocOp op) {
    // Box as blip op, and update local blip
    BlipContentOperation blipOp = new BlipContentOperation(wavelet.createContext(), op);
    blipOp.update(OpBasedBlip.this.blip);
    // Box as wavelet op, and pass to wavelet adapter
    outputSink.consume(new WaveletBlipOperation(getId(), blipOp));
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.