This commit is contained in:
Vladimir Krivosheev
2013-09-28 21:39:06 +02:00
parent 3abedace7a
commit e0b76362e0
3 changed files with 7 additions and 14 deletions
@@ -29,7 +29,6 @@ import static com.intellij.ui.GuiUtils.getTextWithoutMnemonicEscaping;
/**
* Implement this interface and register it as extension to checkoutProvider extension point in order to provide checkout
*/
public interface CheckoutProvider {
@NonNls ExtensionPointName<CheckoutProvider> EXTENSION_POINT_NAME = new ExtensionPointName<CheckoutProvider>("com.intellij.checkoutProvider");
@@ -30,20 +30,18 @@ import org.jetbrains.annotations.NotNull;
* they would automatically would be registered in {@link com.intellij.openapi.vcs.AbstractVcs#activate()}
* and unregistered in {@link com.intellij.openapi.vcs.AbstractVcs#deactivate()}
*
* @see com.intellij.openapi.vcs.ProjectLevelVcsManager#registerCheckinHandlerFactory(BaseCheckinHandlerFactory)
* @author lesya
* @see com.intellij.openapi.vcs.ProjectLevelVcsManager#registerCheckinHandlerFactory(BaseCheckinHandlerFactory)
* @since 5.1
*/
public abstract class CheckinHandlerFactory implements BaseCheckinHandlerFactory {
public static final ExtensionPointName<CheckinHandlerFactory> EP_NAME = ExtensionPointName.create("com.intellij.checkinHandlerFactory");
/**
* Creates a handler for a single Checkin Project or Checkin File operation.
*
*
* @param panel the class which can be used to retrieve information about the files to be committed,
* and to get or set the commit message.
* @param commitContext
* @param panel the class which can be used to retrieve information about the files to be committed,
* and to get or set the commit message.
* @return the handler instance.
*/
@NotNull
@@ -15,18 +15,17 @@
*/
package com.intellij.openapi.vcs.impl;
import com.intellij.openapi.extensions.Extensions;
import com.intellij.openapi.vcs.AbstractVcs;
import com.intellij.openapi.vcs.VcsKey;
import com.intellij.openapi.vcs.checkin.BaseCheckinHandlerFactory;
import com.intellij.openapi.vcs.checkin.CheckinHandlerFactory;
import com.intellij.openapi.vcs.checkin.VcsCheckinHandlerFactory;
import com.intellij.util.SmartList;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.containers.MultiMap;
import org.jetbrains.annotations.NotNull;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
@@ -42,11 +41,8 @@ public class CheckinHandlersManagerImpl extends CheckinHandlersManager {
public CheckinHandlersManagerImpl() {
myVcsMap = new MultiMap<VcsKey, VcsCheckinHandlerFactory>();
myRegisteredBeforeCheckinHandlers = new ArrayList<BaseCheckinHandlerFactory>();
myRegisteredBeforeCheckinHandlers
.addAll(Arrays.asList(Extensions.<CheckinHandlerFactory>getExtensions(CheckinHandlerFactory.EP_NAME)));
final VcsCheckinHandlerFactory[] vcsCheckinHandlerFactories = Extensions.getExtensions(VcsCheckinHandlerFactory.EP_NAME);
for (VcsCheckinHandlerFactory factory : vcsCheckinHandlerFactories) {
ContainerUtil.addAll(myRegisteredBeforeCheckinHandlers, CheckinHandlerFactory.EP_NAME.getExtensions());
for (VcsCheckinHandlerFactory factory : VcsCheckinHandlerFactory.EP_NAME.getExtensions()) {
myVcsMap.putValue(factory.getKey(), factory);
}
}