LCOV - code coverage report
Current view: top level - extensions/api/changes - ChangeApi.java (source / functions) Hit Total Coverage
Test: _coverage_report.dat Lines: 79 137 57.7 %
Date: 2022-11-19 15:00:39 Functions: 48 105 45.7 %

          Line data    Source code
       1             : // Copyright (C) 2013 The Android Open Source Project
       2             : //
       3             : // Licensed under the Apache License, Version 2.0 (the "License");
       4             : // you may not use this file except in compliance with the License.
       5             : // You may obtain a copy of the License at
       6             : //
       7             : // http://www.apache.org/licenses/LICENSE-2.0
       8             : //
       9             : // Unless required by applicable law or agreed to in writing, software
      10             : // distributed under the License is distributed on an "AS IS" BASIS,
      11             : // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      12             : // See the License for the specific language governing permissions and
      13             : // limitations under the License.
      14             : 
      15             : package com.google.gerrit.extensions.api.changes;
      16             : 
      17             : import com.google.common.collect.ImmutableListMultimap;
      18             : import com.google.common.collect.Sets;
      19             : import com.google.gerrit.common.Nullable;
      20             : import com.google.gerrit.extensions.client.ListChangesOption;
      21             : import com.google.gerrit.extensions.client.ReviewerState;
      22             : import com.google.gerrit.extensions.common.AccountInfo;
      23             : import com.google.gerrit.extensions.common.ChangeInfo;
      24             : import com.google.gerrit.extensions.common.ChangeInfoDifference;
      25             : import com.google.gerrit.extensions.common.ChangeMessageInfo;
      26             : import com.google.gerrit.extensions.common.CommentInfo;
      27             : import com.google.gerrit.extensions.common.CommitMessageInput;
      28             : import com.google.gerrit.extensions.common.MergePatchSetInput;
      29             : import com.google.gerrit.extensions.common.PureRevertInfo;
      30             : import com.google.gerrit.extensions.common.RevertSubmissionInfo;
      31             : import com.google.gerrit.extensions.common.RobotCommentInfo;
      32             : import com.google.gerrit.extensions.common.SubmitRequirementInput;
      33             : import com.google.gerrit.extensions.common.SubmitRequirementResultInfo;
      34             : import com.google.gerrit.extensions.common.SuggestedReviewerInfo;
      35             : import com.google.gerrit.extensions.restapi.NotImplementedException;
      36             : import com.google.gerrit.extensions.restapi.RestApiException;
      37             : import java.util.Arrays;
      38             : import java.util.Collection;
      39             : import java.util.EnumSet;
      40             : import java.util.List;
      41             : import java.util.Map;
      42             : import java.util.Set;
      43             : 
      44             : public interface ChangeApi {
      45             :   String id();
      46             : 
      47             :   /**
      48             :    * Look up the current revision for the change.
      49             :    *
      50             :    * <p><strong>Note:</strong> This method eagerly reads the revision. Methods that mutate the
      51             :    * revision do not necessarily re-read the revision. Therefore, calling a getter method on an
      52             :    * instance after calling a mutation method on that same instance is not guaranteed to reflect the
      53             :    * mutation. It is not recommended to store references to {@code RevisionApi} instances.
      54             :    *
      55             :    * @return API for accessing the revision.
      56             :    * @throws RestApiException if an error occurred.
      57             :    */
      58             :   default RevisionApi current() throws RestApiException {
      59          75 :     return revision("current");
      60             :   }
      61             : 
      62             :   /**
      63             :    * Look up a revision of a change by number.
      64             :    *
      65             :    * @see #current()
      66             :    */
      67             :   default RevisionApi revision(int id) throws RestApiException {
      68          29 :     return revision(Integer.toString(id));
      69             :   }
      70             : 
      71             :   /**
      72             :    * Look up a revision of a change by commit SHA-1 or other supported revision string.
      73             :    *
      74             :    * @see #current()
      75             :    */
      76             :   RevisionApi revision(String id) throws RestApiException;
      77             : 
      78             :   /**
      79             :    * Look up the reviewer of the change.
      80             :    *
      81             :    * <p>
      82             :    *
      83             :    * @param id ID of the account, can be a string of the format "Full Name
      84             :    *     &lt;mail@example.com&gt;", just the email address, a full name if it is unique, an account
      85             :    *     ID, a user name or 'self' for the calling user.
      86             :    * @return API for accessing the reviewer.
      87             :    * @throws RestApiException if id is not account ID or is a user that isn't known to be a reviewer
      88             :    *     for this change.
      89             :    */
      90             :   ReviewerApi reviewer(String id) throws RestApiException;
      91             : 
      92             :   default void abandon() throws RestApiException {
      93          18 :     abandon(new AbandonInput());
      94          18 :   }
      95             : 
      96             :   void abandon(AbandonInput in) throws RestApiException;
      97             : 
      98             :   default void restore() throws RestApiException {
      99           5 :     restore(new RestoreInput());
     100           5 :   }
     101             : 
     102             :   void restore(RestoreInput in) throws RestApiException;
     103             : 
     104             :   default void move(String destination) throws RestApiException {
     105           2 :     MoveInput in = new MoveInput();
     106           2 :     in.destinationBranch = destination;
     107           2 :     move(in);
     108           2 :   }
     109             : 
     110             :   void move(MoveInput in) throws RestApiException;
     111             : 
     112             :   void setPrivate(boolean value, @Nullable String message) throws RestApiException;
     113             : 
     114             :   default void setPrivate(boolean value) throws RestApiException {
     115           6 :     setPrivate(value, null);
     116           6 :   }
     117             : 
     118             :   void setWorkInProgress(@Nullable String message) throws RestApiException;
     119             : 
     120             :   void setReadyForReview(@Nullable String message) throws RestApiException;
     121             : 
     122             :   default void setWorkInProgress() throws RestApiException {
     123          10 :     setWorkInProgress(null);
     124          10 :   }
     125             : 
     126             :   default void setReadyForReview() throws RestApiException {
     127           7 :     setReadyForReview(null);
     128           7 :   }
     129             : 
     130             :   /**
     131             :    * Create a new change that reverts this change.
     132             :    *
     133             :    * @see Changes#id(int)
     134             :    */
     135             :   default ChangeApi revert() throws RestApiException {
     136          13 :     return revert(new RevertInput());
     137             :   }
     138             : 
     139             :   /**
     140             :    * Create a new change that reverts this change.
     141             :    *
     142             :    * @see Changes#id(int)
     143             :    */
     144             :   ChangeApi revert(RevertInput in) throws RestApiException;
     145             : 
     146             :   default RevertSubmissionInfo revertSubmission() throws RestApiException {
     147           1 :     return revertSubmission(new RevertInput());
     148             :   }
     149             : 
     150             :   RevertSubmissionInfo revertSubmission(RevertInput in) throws RestApiException;
     151             : 
     152             :   /** Create a merge patch set for the change. */
     153             :   ChangeInfo createMergePatchSet(MergePatchSetInput in) throws RestApiException;
     154             : 
     155             :   ChangeInfo applyPatch(ApplyPatchPatchSetInput in) throws RestApiException;
     156             : 
     157             :   default List<ChangeInfo> submittedTogether() throws RestApiException {
     158          10 :     SubmittedTogetherInfo info =
     159          10 :         submittedTogether(
     160          10 :             EnumSet.noneOf(ListChangesOption.class), EnumSet.noneOf(SubmittedTogetherOption.class));
     161          10 :     return info.changes;
     162             :   }
     163             : 
     164             :   default SubmittedTogetherInfo submittedTogether(EnumSet<SubmittedTogetherOption> options)
     165             :       throws RestApiException {
     166           2 :     return submittedTogether(EnumSet.noneOf(ListChangesOption.class), options);
     167             :   }
     168             : 
     169             :   SubmittedTogetherInfo submittedTogether(
     170             :       EnumSet<ListChangesOption> listOptions, EnumSet<SubmittedTogetherOption> submitOptions)
     171             :       throws RestApiException;
     172             : 
     173             :   /** Rebase the current revision of a change using default options. */
     174             :   default void rebase() throws RestApiException {
     175           4 :     rebase(new RebaseInput());
     176           4 :   }
     177             : 
     178             :   /** Rebase the current revision of a change. */
     179             :   void rebase(RebaseInput in) throws RestApiException;
     180             : 
     181             :   /** Deletes a change. */
     182             :   void delete() throws RestApiException;
     183             : 
     184             :   String topic() throws RestApiException;
     185             : 
     186             :   void topic(String topic) throws RestApiException;
     187             : 
     188             :   IncludedInInfo includedIn() throws RestApiException;
     189             : 
     190             :   default ReviewerResult addReviewer(String reviewer) throws RestApiException {
     191          20 :     ReviewerInput in = new ReviewerInput();
     192          20 :     in.reviewer = reviewer;
     193          20 :     return addReviewer(in);
     194             :   }
     195             : 
     196             :   ReviewerResult addReviewer(ReviewerInput in) throws RestApiException;
     197             : 
     198             :   SuggestedReviewersRequest suggestReviewers() throws RestApiException;
     199             : 
     200             :   default SuggestedReviewersRequest suggestReviewers(String query) throws RestApiException {
     201           1 :     return suggestReviewers().withQuery(query);
     202             :   }
     203             : 
     204             :   default SuggestedReviewersRequest suggestCcs(String query) throws RestApiException {
     205           1 :     return suggestReviewers().forCc().withQuery(query);
     206             :   }
     207             : 
     208             :   /**
     209             :    * Retrieve reviewers ({@code ReviewerState.REVIEWER} and {@code ReviewerState.CC}) on the change.
     210             :    */
     211             :   List<ReviewerInfo> reviewers() throws RestApiException;
     212             : 
     213             :   ChangeInfo get(
     214             :       EnumSet<ListChangesOption> options, ImmutableListMultimap<String, String> pluginOptions)
     215             :       throws RestApiException;
     216             : 
     217             :   default ChangeInfo get(ImmutableListMultimap<String, String> pluginOptions)
     218             :       throws RestApiException {
     219           1 :     return get(EnumSet.noneOf(ListChangesOption.class), pluginOptions);
     220             :   }
     221             : 
     222             :   default ChangeInfo get(EnumSet<ListChangesOption> options) throws RestApiException {
     223          67 :     return get(options, ImmutableListMultimap.of());
     224             :   }
     225             : 
     226             :   default ChangeInfo get(Iterable<ListChangesOption> options) throws RestApiException {
     227          29 :     return get(Sets.newEnumSet(options, ListChangesOption.class));
     228             :   }
     229             : 
     230             :   default ChangeInfo get(ListChangesOption... options) throws RestApiException {
     231          29 :     return get(Arrays.asList(options));
     232             :   }
     233             : 
     234             :   /**
     235             :    * {@link #get(ListChangesOption...)} with all options included, except for the following.
     236             :    *
     237             :    * <ul>
     238             :    *   <li>{@code CHECK} is omitted, to skip consistency checks.
     239             :    *   <li>{@code SKIP_DIFFSTAT} is omitted to ensure diffstat calculations.
     240             :    * </ul>
     241             :    */
     242             :   default ChangeInfo get() throws RestApiException {
     243          57 :     return get(
     244          57 :         EnumSet.complementOf(EnumSet.of(ListChangesOption.CHECK, ListChangesOption.SKIP_DIFFSTAT)));
     245             :   }
     246             : 
     247             :   default ChangeInfoDifference metaDiff(
     248             :       @Nullable String oldMetaRevId, @Nullable String newMetaRevId) throws RestApiException {
     249           1 :     return metaDiff(
     250             :         oldMetaRevId,
     251             :         newMetaRevId,
     252           1 :         EnumSet.noneOf(ListChangesOption.class),
     253           1 :         ImmutableListMultimap.of());
     254             :   }
     255             : 
     256             :   default ChangeInfoDifference metaDiff(
     257             :       @Nullable String oldMetaRevId, @Nullable String newMetaRevId, ListChangesOption... options)
     258             :       throws RestApiException {
     259           1 :     return metaDiff(oldMetaRevId, newMetaRevId, Arrays.asList(options));
     260             :   }
     261             : 
     262             :   default ChangeInfoDifference metaDiff(
     263             :       @Nullable String oldMetaRevId,
     264             :       @Nullable String newMetaRevId,
     265             :       Collection<ListChangesOption> options)
     266             :       throws RestApiException {
     267           1 :     return metaDiff(
     268             :         oldMetaRevId,
     269             :         newMetaRevId,
     270           1 :         Sets.newEnumSet(options, ListChangesOption.class),
     271           1 :         ImmutableListMultimap.of());
     272             :   }
     273             : 
     274             :   /**
     275             :    * Gets the diff between a change's metadata with the two given refs.
     276             :    *
     277             :    * @param oldMetaRevId the SHA-1 of the 'before' metadata diffed against {@code newMetaRevId}
     278             :    * @param newMetaRevId the SHA-1 of the 'after' metadata diffed against {@code oldMetaRevId}
     279             :    */
     280             :   ChangeInfoDifference metaDiff(
     281             :       @Nullable String oldMetaRevId,
     282             :       @Nullable String newMetaRevId,
     283             :       EnumSet<ListChangesOption> options,
     284             :       ImmutableListMultimap<String, String> pluginOptions)
     285             :       throws RestApiException;
     286             : 
     287             :   /** {@link #get(ListChangesOption...)} with no options included. */
     288             :   default ChangeInfo info() throws RestApiException {
     289          24 :     return get(EnumSet.noneOf(ListChangesOption.class));
     290             :   }
     291             : 
     292             :   /**
     293             :    * Provides access to an API regarding the change edit of this change.
     294             :    *
     295             :    * @return a {@code ChangeEditApi} for the change edit of this change
     296             :    * @throws RestApiException if the API isn't accessible
     297             :    */
     298             :   ChangeEditApi edit() throws RestApiException;
     299             : 
     300             :   /** Create a new patch set with a new commit message. */
     301             :   default void setMessage(String message) throws RestApiException {
     302           3 :     CommitMessageInput in = new CommitMessageInput();
     303           3 :     in.message = message;
     304           3 :     setMessage(in);
     305           3 :   }
     306             : 
     307             :   /** Create a new patch set with a new commit message. */
     308             :   void setMessage(CommitMessageInput in) throws RestApiException;
     309             : 
     310             :   /** Set hashtags on a change */
     311             :   void setHashtags(HashtagsInput input) throws RestApiException;
     312             : 
     313             :   /**
     314             :    * Get hashtags on a change.
     315             :    *
     316             :    * @return hashtags
     317             :    */
     318             :   Set<String> getHashtags() throws RestApiException;
     319             : 
     320             :   /**
     321             :    * Manage the attention set.
     322             :    *
     323             :    * @param id The account identifier.
     324             :    */
     325             :   AttentionSetApi attention(String id) throws RestApiException;
     326             : 
     327             :   /** Adds a user to the attention set. */
     328             :   AccountInfo addToAttentionSet(AttentionSetInput input) throws RestApiException;
     329             : 
     330             :   /** Set the assignee of a change. */
     331             :   AccountInfo setAssignee(AssigneeInput input) throws RestApiException;
     332             : 
     333             :   /** Get the assignee of a change. */
     334             :   AccountInfo getAssignee() throws RestApiException;
     335             : 
     336             :   /** Get all past assignees. */
     337             :   List<AccountInfo> getPastAssignees() throws RestApiException;
     338             : 
     339             :   /**
     340             :    * Delete the assignee of a change.
     341             :    *
     342             :    * @return the assignee that was deleted, or null if there was no assignee.
     343             :    */
     344             :   AccountInfo deleteAssignee() throws RestApiException;
     345             : 
     346             :   /**
     347             :    * Get all published comments on a change.
     348             :    *
     349             :    * @return comments in a map keyed by path; comments have the {@code revision} field set to
     350             :    *     indicate their patch set.
     351             :    * @deprecated Callers should use {@link #commentsRequest()} instead
     352             :    */
     353             :   @Deprecated
     354             :   default Map<String, List<CommentInfo>> comments() throws RestApiException {
     355           0 :     return commentsRequest().get();
     356             :   }
     357             : 
     358             :   /**
     359             :    * Get all published comments on a change as a list.
     360             :    *
     361             :    * @return comments as a list; comments have the {@code revision} field set to indicate their
     362             :    *     patch set.
     363             :    * @deprecated Callers should use {@link #commentsRequest()} instead
     364             :    */
     365             :   @Deprecated
     366             :   default List<CommentInfo> commentsAsList() throws RestApiException {
     367           0 :     return commentsRequest().getAsList();
     368             :   }
     369             : 
     370             :   /**
     371             :    * Get a {@link CommentsRequest} entity that can be used to retrieve published comments.
     372             :    *
     373             :    * @return A {@link CommentsRequest} entity that can be used to retrieve the comments using the
     374             :    *     {@link CommentsRequest#get()} or {@link CommentsRequest#getAsList()}.
     375             :    */
     376             :   CommentsRequest commentsRequest() throws RestApiException;
     377             : 
     378             :   /**
     379             :    * Get all robot comments on a change.
     380             :    *
     381             :    * @return robot comments in a map keyed by path; robot comments have the {@code revision} field
     382             :    *     set to indicate their patch set.
     383             :    */
     384             :   Map<String, List<RobotCommentInfo>> robotComments() throws RestApiException;
     385             : 
     386             :   /**
     387             :    * Get all draft comments for the current user on a change.
     388             :    *
     389             :    * @return drafts in a map keyed by path; comments have the {@code revision} field set to indicate
     390             :    *     their patch set.
     391             :    */
     392             :   default Map<String, List<CommentInfo>> drafts() throws RestApiException {
     393           6 :     return draftsRequest().get();
     394             :   }
     395             : 
     396             :   /**
     397             :    * Get all draft comments for the current user on a change as a list.
     398             :    *
     399             :    * @return drafts as a list; comments have the {@code revision} field set to indicate their patch
     400             :    *     set.
     401             :    */
     402             :   default List<CommentInfo> draftsAsList() throws RestApiException {
     403           2 :     return draftsRequest().getAsList();
     404             :   }
     405             : 
     406             :   /**
     407             :    * Get a {@link DraftsRequest} entity that can be used to retrieve draft comments.
     408             :    *
     409             :    * @return A {@link DraftsRequest} entity that can be used to retrieve the draft comments using
     410             :    *     {@link DraftsRequest#get()} or {@link DraftsRequest#getAsList()}.
     411             :    */
     412             :   DraftsRequest draftsRequest() throws RestApiException;
     413             : 
     414             :   ChangeInfo check() throws RestApiException;
     415             : 
     416             :   ChangeInfo check(FixInput fix) throws RestApiException;
     417             : 
     418           1 :   abstract class CheckSubmitRequirementRequest {
     419             :     /** Submit requirement name. */
     420             :     private String name;
     421             : 
     422             :     /**
     423             :      * A change ID for a change in {@link com.google.gerrit.entities.RefNames#REFS_CONFIG} branch
     424             :      * from which the submit-requirement will be loaded.
     425             :      */
     426             :     private String refsConfigChangeId;
     427             : 
     428             :     public abstract SubmitRequirementResultInfo get() throws RestApiException;
     429             : 
     430             :     public CheckSubmitRequirementRequest srName(String srName) {
     431           1 :       this.name = srName;
     432           1 :       return this;
     433             :     }
     434             : 
     435             :     public CheckSubmitRequirementRequest refsConfigChangeId(String changeId) {
     436           1 :       this.refsConfigChangeId = changeId;
     437           1 :       return this;
     438             :     }
     439             : 
     440             :     protected String srName() {
     441           1 :       return name;
     442             :     }
     443             : 
     444             :     protected String getRefsConfigChangeId() {
     445           1 :       return refsConfigChangeId;
     446             :     }
     447             :   }
     448             : 
     449             :   CheckSubmitRequirementRequest checkSubmitRequirementRequest() throws RestApiException;
     450             : 
     451             :   /** Returns the result of evaluating the {@link SubmitRequirementInput} input on the change. */
     452             :   SubmitRequirementResultInfo checkSubmitRequirement(SubmitRequirementInput input)
     453             :       throws RestApiException;
     454             : 
     455             :   void index() throws RestApiException;
     456             : 
     457             :   /** Check if this change is a pure revert of the change stored in revertOf. */
     458             :   PureRevertInfo pureRevert() throws RestApiException;
     459             : 
     460             :   /** Check if this change is a pure revert of claimedOriginal (SHA1 in 40 digit hex). */
     461             :   PureRevertInfo pureRevert(String claimedOriginal) throws RestApiException;
     462             : 
     463             :   /**
     464             :    * Get all messages of a change with detailed account info.
     465             :    *
     466             :    * @return a list of messages sorted by their creation time.
     467             :    */
     468             :   List<ChangeMessageInfo> messages() throws RestApiException;
     469             : 
     470             :   /**
     471             :    * Look up a change message of a change by its id.
     472             :    *
     473             :    * @param id the id of the change message. In NoteDb, this id is the {@code ObjectId} of a commit
     474             :    *     on the change meta branch.
     475             :    * @return API for accessing a change message.
     476             :    * @throws RestApiException if the id is invalid.
     477             :    */
     478             :   ChangeMessageApi message(String id) throws RestApiException;
     479             : 
     480          12 :   abstract class CommentsRequest {
     481             :     private boolean enableContext;
     482             :     private int contextPadding;
     483             : 
     484             :     /**
     485             :      * Get all published comments on a change.
     486             :      *
     487             :      * @return comments in a map keyed by path; comments have the {@code revision} field set to
     488             :      *     indicate their patch set.
     489             :      */
     490             :     public abstract Map<String, List<CommentInfo>> get() throws RestApiException;
     491             : 
     492             :     /**
     493             :      * Get all published comments on a change as a list.
     494             :      *
     495             :      * @return comments as a list; comments have the {@code revision} field set to indicate their
     496             :      *     patch set.
     497             :      */
     498             :     public abstract List<CommentInfo> getAsList() throws RestApiException;
     499             : 
     500             :     public CommentsRequest withContext(boolean enableContext) {
     501           1 :       this.enableContext = enableContext;
     502           1 :       return this;
     503             :     }
     504             : 
     505             :     public CommentsRequest contextPadding(int contextPadding) {
     506           1 :       this.contextPadding = contextPadding;
     507           1 :       return this;
     508             :     }
     509             : 
     510             :     public CommentsRequest withContext() {
     511           0 :       this.enableContext = true;
     512           0 :       return this;
     513             :     }
     514             : 
     515             :     public boolean getContext() {
     516          12 :       return enableContext;
     517             :     }
     518             : 
     519             :     public int getContextPadding() {
     520          12 :       return contextPadding;
     521             :     }
     522             :   }
     523             : 
     524           7 :   abstract class DraftsRequest extends CommentsRequest {}
     525             : 
     526           1 :   abstract class SuggestedReviewersRequest {
     527             :     private String query;
     528             :     private int limit;
     529             :     private boolean excludeGroups;
     530           1 :     private ReviewerState reviewerState = ReviewerState.REVIEWER;
     531             : 
     532             :     public abstract List<SuggestedReviewerInfo> get() throws RestApiException;
     533             : 
     534             :     public SuggestedReviewersRequest withQuery(String query) {
     535           1 :       this.query = query;
     536           1 :       return this;
     537             :     }
     538             : 
     539             :     public SuggestedReviewersRequest withLimit(int limit) {
     540           1 :       this.limit = limit;
     541           1 :       return this;
     542             :     }
     543             : 
     544             :     public SuggestedReviewersRequest excludeGroups(boolean excludeGroups) {
     545           1 :       this.excludeGroups = excludeGroups;
     546           1 :       return this;
     547             :     }
     548             : 
     549             :     public SuggestedReviewersRequest forCc() {
     550           1 :       this.reviewerState = ReviewerState.CC;
     551           1 :       return this;
     552             :     }
     553             : 
     554             :     public String getQuery() {
     555           1 :       return query;
     556             :     }
     557             : 
     558             :     public int getLimit() {
     559           1 :       return limit;
     560             :     }
     561             : 
     562             :     public boolean getExcludeGroups() {
     563           1 :       return excludeGroups;
     564             :     }
     565             : 
     566             :     public ReviewerState getReviewerState() {
     567           1 :       return reviewerState;
     568             :     }
     569             :   }
     570             : 
     571             :   /**
     572             :    * A default implementation which allows source compatibility when adding new methods to the
     573             :    * interface.
     574             :    */
     575           0 :   class NotImplemented implements ChangeApi {
     576             :     @Override
     577             :     public String id() {
     578           0 :       throw new NotImplementedException();
     579             :     }
     580             : 
     581             :     @Override
     582             :     public ReviewerApi reviewer(String id) throws RestApiException {
     583           0 :       throw new NotImplementedException();
     584             :     }
     585             : 
     586             :     @Override
     587             :     public RevisionApi revision(String id) throws RestApiException {
     588           0 :       throw new NotImplementedException();
     589             :     }
     590             : 
     591             :     @Override
     592             :     public void abandon(AbandonInput in) throws RestApiException {
     593           0 :       throw new NotImplementedException();
     594             :     }
     595             : 
     596             :     @Override
     597             :     public void restore(RestoreInput in) throws RestApiException {
     598           0 :       throw new NotImplementedException();
     599             :     }
     600             : 
     601             :     @Override
     602             :     public void move(MoveInput in) throws RestApiException {
     603           0 :       throw new NotImplementedException();
     604             :     }
     605             : 
     606             :     @Override
     607             :     public void setPrivate(boolean value, @Nullable String message) throws RestApiException {
     608           0 :       throw new NotImplementedException();
     609             :     }
     610             : 
     611             :     @Override
     612             :     public void setWorkInProgress(String message) throws RestApiException {
     613           0 :       throw new NotImplementedException();
     614             :     }
     615             : 
     616             :     @Override
     617             :     public void setReadyForReview(String message) throws RestApiException {
     618           0 :       throw new NotImplementedException();
     619             :     }
     620             : 
     621             :     @Override
     622             :     public ChangeApi revert(RevertInput in) throws RestApiException {
     623           0 :       throw new NotImplementedException();
     624             :     }
     625             : 
     626             :     @Override
     627             :     public RevertSubmissionInfo revertSubmission(RevertInput in) throws RestApiException {
     628           0 :       throw new NotImplementedException();
     629             :     }
     630             : 
     631             :     @Override
     632             :     public void rebase(RebaseInput in) throws RestApiException {
     633           0 :       throw new NotImplementedException();
     634             :     }
     635             : 
     636             :     @Override
     637             :     public void delete() throws RestApiException {
     638           0 :       throw new NotImplementedException();
     639             :     }
     640             : 
     641             :     @Override
     642             :     public String topic() throws RestApiException {
     643           0 :       throw new NotImplementedException();
     644             :     }
     645             : 
     646             :     @Override
     647             :     public void topic(String topic) throws RestApiException {
     648           0 :       throw new NotImplementedException();
     649             :     }
     650             : 
     651             :     @Override
     652             :     public IncludedInInfo includedIn() throws RestApiException {
     653           0 :       throw new NotImplementedException();
     654             :     }
     655             : 
     656             :     @Override
     657             :     public ReviewerResult addReviewer(ReviewerInput in) throws RestApiException {
     658           0 :       throw new NotImplementedException();
     659             :     }
     660             : 
     661             :     @Override
     662             :     public SuggestedReviewersRequest suggestReviewers() throws RestApiException {
     663           0 :       throw new NotImplementedException();
     664             :     }
     665             : 
     666             :     @Override
     667             :     public SuggestedReviewersRequest suggestReviewers(String query) throws RestApiException {
     668           0 :       throw new NotImplementedException();
     669             :     }
     670             : 
     671             :     @Override
     672             :     public List<ReviewerInfo> reviewers() throws RestApiException {
     673           0 :       throw new NotImplementedException();
     674             :     }
     675             : 
     676             :     @Override
     677             :     public ChangeInfo get(
     678             :         EnumSet<ListChangesOption> options, ImmutableListMultimap<String, String> pluginOptions)
     679             :         throws RestApiException {
     680           0 :       throw new NotImplementedException();
     681             :     }
     682             : 
     683             :     @Override
     684             :     public ChangeInfoDifference metaDiff(
     685             :         @Nullable String oldMetaRevId,
     686             :         @Nullable String newMetaRevId,
     687             :         EnumSet<ListChangesOption> options,
     688             :         ImmutableListMultimap<String, String> pluginOptions)
     689             :         throws RestApiException {
     690           0 :       throw new NotImplementedException();
     691             :     }
     692             : 
     693             :     @Override
     694             :     public void setMessage(CommitMessageInput in) throws RestApiException {
     695           0 :       throw new NotImplementedException();
     696             :     }
     697             : 
     698             :     @Override
     699             :     public ChangeEditApi edit() throws RestApiException {
     700           0 :       throw new NotImplementedException();
     701             :     }
     702             : 
     703             :     @Override
     704             :     public void setHashtags(HashtagsInput input) throws RestApiException {
     705           0 :       throw new NotImplementedException();
     706             :     }
     707             : 
     708             :     @Override
     709             :     public Set<String> getHashtags() throws RestApiException {
     710           0 :       throw new NotImplementedException();
     711             :     }
     712             : 
     713             :     @Override
     714             :     public AttentionSetApi attention(String id) throws RestApiException {
     715           0 :       throw new NotImplementedException();
     716             :     }
     717             : 
     718             :     @Override
     719             :     public AccountInfo addToAttentionSet(AttentionSetInput input) throws RestApiException {
     720           0 :       throw new NotImplementedException();
     721             :     }
     722             : 
     723             :     @Override
     724             :     public AccountInfo setAssignee(AssigneeInput input) throws RestApiException {
     725           0 :       throw new NotImplementedException();
     726             :     }
     727             : 
     728             :     @Override
     729             :     public AccountInfo getAssignee() throws RestApiException {
     730           0 :       throw new NotImplementedException();
     731             :     }
     732             : 
     733             :     @Override
     734             :     public List<AccountInfo> getPastAssignees() throws RestApiException {
     735           0 :       throw new NotImplementedException();
     736             :     }
     737             : 
     738             :     @Override
     739             :     public AccountInfo deleteAssignee() throws RestApiException {
     740           0 :       throw new NotImplementedException();
     741             :     }
     742             : 
     743             :     @Override
     744             :     @Deprecated
     745             :     public Map<String, List<CommentInfo>> comments() throws RestApiException {
     746           0 :       throw new NotImplementedException();
     747             :     }
     748             : 
     749             :     @Override
     750             :     @Deprecated
     751             :     public List<CommentInfo> commentsAsList() throws RestApiException {
     752           0 :       throw new NotImplementedException();
     753             :     }
     754             : 
     755             :     @Override
     756             :     public CommentsRequest commentsRequest() throws RestApiException {
     757           0 :       throw new NotImplementedException();
     758             :     }
     759             : 
     760             :     @Override
     761             :     public Map<String, List<RobotCommentInfo>> robotComments() throws RestApiException {
     762           0 :       throw new NotImplementedException();
     763             :     }
     764             : 
     765             :     @Override
     766             :     public Map<String, List<CommentInfo>> drafts() throws RestApiException {
     767           0 :       throw new NotImplementedException();
     768             :     }
     769             : 
     770             :     @Override
     771             :     public List<CommentInfo> draftsAsList() throws RestApiException {
     772           0 :       throw new NotImplementedException();
     773             :     }
     774             : 
     775             :     @Override
     776             :     public DraftsRequest draftsRequest() throws RestApiException {
     777           0 :       throw new NotImplementedException();
     778             :     }
     779             : 
     780             :     @Override
     781             :     public ChangeInfo check() throws RestApiException {
     782           0 :       throw new NotImplementedException();
     783             :     }
     784             : 
     785             :     @Override
     786             :     public ChangeInfo check(FixInput fix) throws RestApiException {
     787           0 :       throw new NotImplementedException();
     788             :     }
     789             : 
     790             :     @Override
     791             :     public CheckSubmitRequirementRequest checkSubmitRequirementRequest() throws RestApiException {
     792           0 :       throw new NotImplementedException();
     793             :     }
     794             : 
     795             :     @Override
     796             :     public SubmitRequirementResultInfo checkSubmitRequirement(SubmitRequirementInput input)
     797             :         throws RestApiException {
     798           0 :       throw new NotImplementedException();
     799             :     }
     800             : 
     801             :     @Override
     802             :     public void index() throws RestApiException {
     803           0 :       throw new NotImplementedException();
     804             :     }
     805             : 
     806             :     @Override
     807             :     public List<ChangeInfo> submittedTogether() throws RestApiException {
     808           0 :       throw new NotImplementedException();
     809             :     }
     810             : 
     811             :     @Override
     812             :     public SubmittedTogetherInfo submittedTogether(EnumSet<SubmittedTogetherOption> options)
     813             :         throws RestApiException {
     814           0 :       throw new NotImplementedException();
     815             :     }
     816             : 
     817             :     @Override
     818             :     public SubmittedTogetherInfo submittedTogether(
     819             :         EnumSet<ListChangesOption> a, EnumSet<SubmittedTogetherOption> b) throws RestApiException {
     820           0 :       throw new NotImplementedException();
     821             :     }
     822             : 
     823             :     @Override
     824             :     public ChangeInfo createMergePatchSet(MergePatchSetInput in) throws RestApiException {
     825           0 :       throw new NotImplementedException();
     826             :     }
     827             : 
     828             :     @Override
     829             :     public ChangeInfo applyPatch(ApplyPatchPatchSetInput in) throws RestApiException {
     830           0 :       throw new NotImplementedException();
     831             :     }
     832             : 
     833             :     @Override
     834             :     public PureRevertInfo pureRevert() throws RestApiException {
     835           0 :       throw new NotImplementedException();
     836             :     }
     837             : 
     838             :     @Override
     839             :     public PureRevertInfo pureRevert(String claimedOriginal) throws RestApiException {
     840           0 :       throw new NotImplementedException();
     841             :     }
     842             : 
     843             :     @Override
     844             :     public List<ChangeMessageInfo> messages() throws RestApiException {
     845           0 :       throw new NotImplementedException();
     846             :     }
     847             : 
     848             :     @Override
     849             :     public ChangeMessageApi message(String id) throws RestApiException {
     850           0 :       throw new NotImplementedException();
     851             :     }
     852             :   }
     853             : }

Generated by: LCOV version 1.16+git.20220603.dfeb750