summaryrefslogtreecommitdiff
path: root/plugins/svn4idea/src/org/jetbrains/idea/svn/api/SvnKitClientFactory.java
blob: 95b17d95add8ff9d936d0d65966da301e5190549 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
package org.jetbrains.idea.svn.api;

import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.idea.svn.SvnVcs;
import org.jetbrains.idea.svn.add.SvnKitAddClient;
import org.jetbrains.idea.svn.annotate.SvnKitAnnotateClient;
import org.jetbrains.idea.svn.browse.BrowseClient;
import org.jetbrains.idea.svn.browse.SvnKitBrowseClient;
import org.jetbrains.idea.svn.change.SvnKitChangeListClient;
import org.jetbrains.idea.svn.checkin.SvnKitCheckinClient;
import org.jetbrains.idea.svn.checkin.SvnKitImportClient;
import org.jetbrains.idea.svn.checkout.SvnKitCheckoutClient;
import org.jetbrains.idea.svn.checkout.SvnKitExportClient;
import org.jetbrains.idea.svn.cleanup.SvnKitCleanupClient;
import org.jetbrains.idea.svn.conflict.SvnKitConflictClient;
import org.jetbrains.idea.svn.content.SvnKitContentClient;
import org.jetbrains.idea.svn.copy.SvnKitCopyMoveClient;
import org.jetbrains.idea.svn.delete.SvnKitDeleteClient;
import org.jetbrains.idea.svn.diff.SvnKitDiffClient;
import org.jetbrains.idea.svn.history.SvnKitHistoryClient;
import org.jetbrains.idea.svn.integrate.SvnKitMergeClient;
import org.jetbrains.idea.svn.lock.SvnKitLockClient;
import org.jetbrains.idea.svn.status.StatusClient;
import org.jetbrains.idea.svn.status.SvnKitStatusClient;
import org.jetbrains.idea.svn.info.SvnKitInfoClient;
import org.jetbrains.idea.svn.properties.SvnKitPropertyClient;
import org.jetbrains.idea.svn.revert.SvnKitRevertClient;
import org.jetbrains.idea.svn.update.SvnKitRelocateClient;
import org.jetbrains.idea.svn.update.SvnKitUpdateClient;
import org.jetbrains.idea.svn.update.UpdateClient;
import org.jetbrains.idea.svn.upgrade.SvnKitUpgradeClient;
import org.tmatesoft.svn.core.wc.ISVNStatusFileProvider;

/**
 * @author Konstantin Kolosovsky.
 */
public class SvnKitClientFactory extends ClientFactory {

  public SvnKitClientFactory(@NotNull SvnVcs vcs) {
    super(vcs);
  }

  @Override
  protected void setup() {
    addClient = new SvnKitAddClient();
    annotateClient = new SvnKitAnnotateClient();
    contentClient = new SvnKitContentClient();
    historyClient = new SvnKitHistoryClient();
    revertClient = new SvnKitRevertClient();
    deleteClient = new SvnKitDeleteClient();
    copyMoveClient = new SvnKitCopyMoveClient();
    conflictClient = new SvnKitConflictClient();
    propertyClient = new SvnKitPropertyClient();
    mergeClient = new SvnKitMergeClient();
    changeListClient = new SvnKitChangeListClient();
    checkoutClient = new SvnKitCheckoutClient();
    myLockClient = new SvnKitLockClient();
    myCleanupClient = new SvnKitCleanupClient();
    myRelocateClient = new SvnKitRelocateClient();
    myVersionClient = new SvnKitVersionClient();
    myImportClient = new SvnKitImportClient();
    myExportClient = new SvnKitExportClient();
    myUpgradeClient = new SvnKitUpgradeClient();
    myBrowseClient = new SvnKitBrowseClient();
    myDiffClient = new SvnKitDiffClient();
    myCheckinClient = new SvnKitCheckinClient();
    statusClient = new SvnKitStatusClient();
    infoClient = new SvnKitInfoClient();
    myRepositoryFeaturesClient = new SvnKitRepositoryFeaturesClient();

    put(BrowseClient.class, SvnKitBrowseClient.class);
  }

  @NotNull
  @Override
  public StatusClient createStatusClient(@Nullable ISVNStatusFileProvider provider, @NotNull ProgressTracker handler) {
    return prepare(new SvnKitStatusClient(provider, handler));
  }

  @NotNull
  @Override
  public UpdateClient createUpdateClient() {
    return prepare(new SvnKitUpdateClient());
  }
}