1 /*
2  * SVNHistoryAsyncDataProvider.java
3  *
4  * Copyright (C) 2021 by RStudio, PBC
5  *
6  * Unless you have received this program directly from RStudio pursuant
7  * to the terms of a commercial license agreement with RStudio, then
8  * this program is licensed to you under the terms of version 3 of the
9  * GNU Affero General Public License. This program is distributed WITHOUT
10  * ANY EXPRESS OR IMPLIED WARRANTY, INCLUDING THOSE OF NON-INFRINGEMENT,
11  * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Please refer to the
12  * AGPL (http://www.gnu.org/licenses/agpl-3.0.txt) for more details.
13  *
14  */
15 package org.rstudio.studio.client.workbench.views.vcs.svn.dialog;
16 
17 import com.google.inject.Inject;
18 import org.rstudio.core.client.StringUtil;
19 import org.rstudio.core.client.files.FileSystemItem;
20 import org.rstudio.core.client.jsonrpc.RpcObjectList;
21 import org.rstudio.studio.client.common.vcs.SVNServerOperations;
22 import org.rstudio.studio.client.server.ServerRequestCallback;
23 import org.rstudio.studio.client.workbench.views.vcs.dialog.CommitCount;
24 import org.rstudio.studio.client.workbench.views.vcs.dialog.CommitInfo;
25 import org.rstudio.studio.client.workbench.views.vcs.dialog.HistoryAsyncDataProvider;
26 
27 public class SVNHistoryAsyncDataProvider extends HistoryAsyncDataProvider
28 {
29    @Inject
SVNHistoryAsyncDataProvider(SVNServerOperations server)30    public SVNHistoryAsyncDataProvider(SVNServerOperations server)
31    {
32       server_ = server;
33    }
34 
35    @Override
getHistoryCount(String revision, FileSystemItem fileFilter, String searchText, ServerRequestCallback<CommitCount> requestCallback)36    protected void getHistoryCount(String revision,
37                                   FileSystemItem fileFilter,
38                                   String searchText,
39                                   ServerRequestCallback<CommitCount> requestCallback)
40    {
41       server_.svnHistoryCount(StringUtil.parseInt(revision, -1),
42                               fileFilter,
43                               searchText,
44                               requestCallback);
45    }
46 
47    @Override
getHistory(String revision, FileSystemItem fileFilter, int skip, int maxEntries, String searchText, ServerRequestCallback<RpcObjectList<CommitInfo>> requestCallback)48    protected void getHistory(String revision,
49                              FileSystemItem fileFilter,
50                              int skip,
51                              int maxEntries,
52                              String searchText,
53                              ServerRequestCallback<RpcObjectList<CommitInfo>> requestCallback)
54    {
55       server_.svnHistory(StringUtil.parseInt(revision, -1),
56                          fileFilter,
57                          skip,
58                          maxEntries,
59                          searchText,
60                          requestCallback);
61    }
62 
63    private final SVNServerOperations server_;
64 }
65