Examples of ObservableWaveletData


Examples of org.waveprotocol.wave.model.wave.data.ObservableWaveletData

   * @param currentVersion version at which to connect.
   */
  private void checkedConnectChannel(long currentVersion) throws ChannelException {
    byte[] signature = sig(currentVersion);
    final HashedVersion signedVersion = HashedVersion.of(currentVersion, sig(currentVersion));
    final ObservableWaveletData wavelet = buildSnapshot(currentVersion, signature);

    receiver.expectConnection(signedVersion, signedVersion);
    receiver.expectCommit(currentVersion);
    connectChannel(wavelet);
    receiver.checkExpectationsSatisfied();
View Full Code Here

Examples of org.waveprotocol.wave.model.wave.data.ObservableWaveletData

   * @param waveletName the wavelet name.
   */
  public static RobotWaveletData createEmptyRobotWavelet(ParticipantId participant,
      WaveletName waveletName) {
    HashedVersion hashedVersionZero = HASH_FACTORY.createVersionZero(waveletName);
    ObservableWaveletData emptyWavelet =
        WaveletDataUtil.createEmptyWavelet(waveletName, participant, hashedVersionZero,
            System.currentTimeMillis());
    RobotWaveletData newWavelet = new RobotWaveletData(emptyWavelet, hashedVersionZero);
    return newWavelet;
  }
View Full Code Here

Examples of org.waveprotocol.wave.model.wave.data.ObservableWaveletData

        deltas.getEndVersion();
    Preconditions.checkArgument(snapshot.getVersion() == endVersion.getVersion(),
        String.format("Version of snapshot %s doesn't match the end version %s",
            snapshot.getVersion(), endVersion));

    ObservableWaveletData preDeltaWavelet = WaveletDataUtil.copyWavelet(snapshot);
    rollback(preDeltaWavelet, deltas);
    ObservableWaveletData postDeltaWavelet = WaveletDataUtil.copyWavelet(snapshot);
    return new WaveletAndDeltas(preDeltaWavelet, postDeltaWavelet, deltas);
  }
View Full Code Here

Examples of org.waveprotocol.wave.model.wave.data.ObservableWaveletData

   */
  public OperationServiceHelper(WaveletName waveletName, ParticipantId participant) {
    waveletProvider = mock(WaveletProvider.class);
    EventDataConverter converter = new EventDataConverterV22();

    ObservableWaveletData waveletData = WaveletDataImpl.Factory.create(DOCUMENT_FACTORY).create(
        new EmptyWaveletSnapshot(waveletName.waveId, waveletName.waveletId, participant,
            HASH_FACTORY.createVersionZero(waveletName), 0L));
    waveletData.addParticipant(participant);

    BasicWaveletOperationContextFactory CONTEXT_FACTORY =
        new BasicWaveletOperationContextFactory(participant);

    SilentOperationSink<WaveletOperation> executor =
        SilentOperationSink.Executor.<WaveletOperation, WaveletData>build(waveletData);
    OpBasedWavelet wavelet =
        new OpBasedWavelet(waveletData.getWaveId(), waveletData, CONTEXT_FACTORY,
            ParticipationHelper.DEFAULT, executor, SilentOperationSink.VOID);

    // Make a conversation with an empty root blip
    WaveletBasedConversation.makeWaveletConversational(wavelet);
    ConversationUtil conversationUtil = new ConversationUtil(FakeIdGenerator.create());
View Full Code Here

Examples of org.waveprotocol.wave.model.wave.data.ObservableWaveletData

   * @returns true if an event was generated, false otherwise
   */
  public EventMessageBundle generateEvents(WaveletAndDeltas waveletAndDeltas,
      Map<EventType, Capability> capabilities, EventDataConverter converter) {
    EventMessageBundle messages = new EventMessageBundle(robotName.toEmailAddress(), "");
    ObservableWaveletData snapshot =
        WaveletDataUtil.copyWavelet(waveletAndDeltas.getSnapshotBeforeDeltas());
    isEventProcessingSuspended = !snapshot.getParticipants().contains(robotId);

    if (robotName.hasProxyFor()) {
      // This robot is proxying so set the proxy field.
      messages.setProxyingFor(robotName.getProxyFor());
    }

    // Sending any operations will cause an exception.
    OpBasedWavelet wavelet =
        new OpBasedWavelet(snapshot.getWaveId(), snapshot,
            // This doesn't thrown an exception, the sinks will
            new BasicWaveletOperationContextFactory(null),
            ParticipationHelper.DEFAULT, SilentOperationSink.VOID, SilentOperationSink.VOID);

    ObservableConversation conversation = getRootConversation(wavelet);
View Full Code Here

Examples of org.waveprotocol.wave.model.wave.data.ObservableWaveletData

    }

    // Create the new channel, and fake an initial snapshot.
    // TODO(anorth): inject a clock for providing timestamps.
    HashedVersion v0 = hashFactory.createVersionZero(WaveletName.of(waveId, waveletId));
    final ObservableWaveletData emptySnapshot =
        dataFactory.create(
            new EmptyWaveletSnapshot(waveId, waveletId, creator, v0, System.currentTimeMillis()));

    try {
      boolean dropAdditionalSnapshot = true;
View Full Code Here

Examples of org.waveprotocol.wave.model.wave.data.ObservableWaveletData

      Collection<KnownWavelet> knownWavelets) {
    Map<WaveletId, List<HashedVersion>> signatures =
      new HashMap<WaveletId, List<HashedVersion>>();
    for (KnownWavelet knownWavelet : knownWavelets) {
      if (knownWavelet.accessibility.isReadable()) {
        ObservableWaveletData snapshot = knownWavelet.snapshot;
        WaveletId waveletId = snapshot.getWaveletId();
        List<HashedVersion> sigs = Collections.singletonList(snapshot.getHashedVersion());
        signatures.put(waveletId, sigs);
      }
    }
    return signatures;
  }
View Full Code Here

Examples of org.waveprotocol.wave.model.wave.data.ObservableWaveletData

        } else {
          throw new InvalidRequestException("Wavelet " + waveletName + " couldn't be retrieved");
        }

      } else {
        ObservableWaveletData obsWavelet = FACTORY.create(snapshot.snapshot);
        wavelet = new RobotWaveletData(obsWavelet, snapshot.committedVersion);
      }
      openedWavelets.put(waveletName, wavelet);
    }
    return wavelet.getOpBasedWavelet(participant);
View Full Code Here

Examples of org.waveprotocol.wave.model.wave.data.ObservableWaveletData

    // TODO(ljvderijk): Proper schemas need to be enforced here.

    DocumentFactory<?> docFactory =
        ObservablePluggableMutableDocument.createFactory(SchemaCollection.empty());

    ObservableWaveletData perAuthorWavelet =
        WaveletDataImpl.Factory.create(docFactory).create(snapshot);

    SilentOperationSink<WaveletOperation> executor =
        SilentOperationSink.Executor.<WaveletOperation, WaveletData>build(perAuthorWavelet);
    // Build sink that gathers these ops
    CapturingOperationSink<WaveletOperation> output =
        new CapturingOperationSink<WaveletOperation>();

    BasicWaveletOperationContextFactory contextFactory =
        new BasicWaveletOperationContextFactory(opAuthor);
    OpBasedWavelet w =
        new OpBasedWavelet(perAuthorWavelet.getWaveId(), perAuthorWavelet, contextFactory,
            ParticipationHelper.DEFAULT, executor, output);

    // Store the new sink and wavelet
    sinkMap.put(opAuthor, output);
    waveletMap.put(opAuthor, w);
View Full Code Here

Examples of org.waveprotocol.wave.model.wave.data.ObservableWaveletData

  @Override
  public OpBasedWavelet create(WaveId waveId, WaveletId waveletId, ParticipantId creator) {
    long now = System.currentTimeMillis();
    HashedVersion v0 = HashedVersion.unsigned(0);
    ObservableWaveletData waveData = holderFactory
        .create(new EmptyWaveletSnapshot(waveId, waveletId, creator, v0, now));
    lastContextFactory = new MockWaveletOperationContextFactory().setParticipantId(author);
    lastAuthoriser = new MockParticipationHelper();
    SilentOperationSink<WaveletOperation> executor =
        Executor.<WaveletOperation, WaveletData>build(waveData);
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.