Package org.waveprotocol.wave.model.version

Examples of org.waveprotocol.wave.model.version.HashedVersion


        eq(ImmutableSet.of(DOMAIN)));
  }

  private void submitDeltaToNewWavelet(WaveletName name, ParticipantId user,
      WaveletOperation... ops) {
    HashedVersion version = V0_HASH_FACTORY.createVersionZero(name);

    WaveletDelta delta = new WaveletDelta(user, version, ImmutableList.copyOf(ops));

    ProtocolWaveletDelta protoDelta = CoreWaveletOperationSerializer.serialize(delta);
View Full Code Here


    assertNull(target.getTransformedDelta(V0));
    assertNull(target.getAppliedDelta(V0));
  }

  public void testSnapshotMetadataReflectsDeltas() throws Exception {
    HashedVersion v2 = d1.getResultingVersion();
    appendDeltas(d1);

    assertEquals(v2, target.getCurrentVersion());
    ReadableWaveletData snapshot = target.getSnapshot();
    assertEquals(AUTHOR, snapshot.getCreator());
    assertEquals(v2, snapshot.getHashedVersion());
    assertEquals(TS, snapshot.getCreationTime());
    assertEquals(TS, snapshot.getLastModifiedTime());
    assertEquals(2, snapshot.getVersion());

    HashedVersion v4 = d2.getResultingVersion();
    appendDeltas(d2);

    assertEquals(v4, target.getCurrentVersion());
    snapshot = target.getSnapshot();
    assertEquals(v4, snapshot.getHashedVersion());
View Full Code Here

  /**
   * Checks that a request for the deltas spanning a contiguous sequence of
   * delta facets produces correct results.
   */
  private void checkHistoryForDeltas(WaveletDeltaRecord... deltas) {
    HashedVersion beginVersion = deltas[0].getAppliedAtVersion();
    HashedVersion endVersion = deltas[deltas.length - 1].getTransformedDelta().getResultingVersion();

    {
      List<TransformedWaveletDelta> expected = Lists.newArrayListWithExpectedSize(deltas.length);
      for (WaveletDeltaRecord d : deltas) {
        expected.add(d.getTransformedDelta());
View Full Code Here

      assertTrue(Iterables.elementsEqual(expected, appliedDeltasReceiver));
    }
  }

private void checkHistoryForDeltasWithInterrupt(final int interruptIndex, WaveletDeltaRecord... deltas) {
    HashedVersion beginVersion = deltas[0].getAppliedAtVersion();
    HashedVersion endVersion = deltas[interruptIndex].getTransformedDelta().getResultingVersion();

    {
      List<TransformedWaveletDelta> expected = Lists.newArrayListWithExpectedSize(interruptIndex+1);
      for (int i=0; i <= interruptIndex; i++) {
        expected.add(deltas[i].getTransformedDelta());
View Full Code Here

      ObservableWaveletData snapshot, HashedVersion committedVersion,
      Accessibility accessibility, boolean initialiseLocalChannel) throws ChannelException {
    final Stacklet stacklet =
        createStacklet(waveletId, snapshot, accessibility, initialiseLocalChannel);
    if (initialiseLocalChannel) {
      final HashedVersion currentVersion = snapshot.getHashedVersion();
      initialiseLocallyCreatedStacklet(stacklet, waveletId, snapshot, committedVersion,
          currentVersion);
    }
  }
View Full Code Here

    // or deltas (beginning with an empty delta to communicate the initial
    // version and signature).
    state = State.CONNECTED;
    connectionTag++;

    HashedVersion currentVersion;
    if (currentSignedVersion != null) {
      currentVersion = currentSignedVersion;
    } else {
      currentVersion = connectVersion;
    }
View Full Code Here

      throw new ChannelException("Delta channel: invalid first wave stream message: null"
          + ", last committed version: " + lastCommittedVersion
          + "currentSignedVersion: " + currentSignedVersion, NOT_RECOVERABLE);
    }

    HashedVersion connectVersion;
    // This stream has connected at the latest version of the wavelet.
    connectVersion = wavelet.getHashedVersion();
    logTrace("Delta channel connecting, wavelet id ",
        wavelet.getWaveId(), "/",
        wavelet.getWaveletId(), ", version ",
        connectVersion.getVersion());

    processConnect(connectVersion, lastCommittedVersion, currentSignedVersion);
  }
View Full Code Here

    if (deltas == null || deltas.size() == 0) {
      throw new ChannelException("Delta channel: no deltas in first wave stream message",
          NOT_RECOVERABLE);
    }

    HashedVersion connectVersion;
    // This stream has reconnected at a previous version of the wavelet.
    // The first delta has zero operations. It carries the reconnect version
    // and signature.
    TransformedWaveletDelta firstDelta = deltas.get(0);
    if (firstDelta.size() != 0) {
      throw new ChannelException("Delta channel: invalid first wave stream message, "
          + "expected no ops, got " + firstDelta.size(), NOT_RECOVERABLE);
    }
    connectVersion = HashedVersion.of(firstDelta.getAppliedAtVersion(),
        firstDelta.getResultingVersion().getHistoryHash());
    logTrace("Delta channel reconnecting, connect version ",
        connectVersion.getVersion(), " current version ", currentSignedVersion != null ?
            currentSignedVersion.getVersion() : connectVersion.getVersion());

    processConnect(connectVersion, lastCommittedVersion, currentSignedVersion);
  }
View Full Code Here

    // create a version update op for each unacknowledged op. The last one also
    // includes the acked signature.
    Iterator<WaveletOperation> opItr = unacknowledged.iterator();
    while (opItr.hasNext()) {
      WaveletOperation op = opItr.next();
      HashedVersion signedVersion = opItr.hasNext() ? null : ackedSignature;
      versionOps.add(op.createVersionUpdateOp(1, signedVersion));
    }

    // Transform against any queued ops. Note server ops even when they are nullified will
    // leave behind a version updating op. i.e. the total number of server ops will never change.
View Full Code Here

        if (update.hasChannelId()) {
          logger.trace().log("A non-first update contained a channel id: " + update);
        }
        if (openListener != null) {
          WaveletId waveletId = update.hasWaveletId() ? update.getWaveletId() : null;
          HashedVersion lastCommittedVersion = update.hasLastCommittedVersion() ?
              update.getLastCommittedVersion() : null;
          HashedVersion currentVersion = update.hasCurrentVersion() ?
              update.getCurrentVersion() : null;
          try {
            if (update.hasWaveletSnapshot()) {
              // it's a snapshot
              openListener.onSnapshot(waveletId, update.getWaveletSnapshot(),
View Full Code Here

TOP

Related Classes of org.waveprotocol.wave.model.version.HashedVersion

Copyright © 2018 www.massapicom. 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.