// Copyright 2012 Google Inc. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

package com.google.collide.dto;

import com.google.collide.dtogen.shared.RoutingType;
import com.google.collide.dtogen.shared.ServerToClientDto;
import com.google.collide.json.shared.JsonArray;

/**
 * Provides the list of doc ops that have been applied on the server since some
 * revision.
 *
 */
@RoutingType(type = RoutingTypes.RECOVERFROMMISSEDDOCOPSRESPONSE)
public interface RecoverFromMissedDocOpsResponse extends ServerToClientDto {
  String getWorkspaceId();

  /**
   * The applied doc ops, ordered by revision.
   *
   * <p>
   * The first doc op here will be the client current's revision (as specified
   * by {@link RecoverFromMissedDocOps#getCurrentCcRevision()}) + 1.
   */
  JsonArray<ServerToClientDocOp> getDocOps();
}
