| /* |
| * Copyright 2000-2009 JetBrains s.r.o. |
| * |
| * 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.intellij.openapi.vcs.changes.committed; |
| |
| import com.intellij.openapi.diagnostic.Logger; |
| import com.intellij.openapi.vcs.FilePath; |
| import com.intellij.openapi.vcs.FileStatus; |
| import com.intellij.openapi.vcs.changes.Change; |
| import com.intellij.openapi.vcs.changes.ChangesUtil; |
| |
| public class IncomingChangeState { |
| private static final Logger INCOMING_LOG = Logger.getInstance("#incoming"); |
| |
| private final FileStatus myStatus; |
| private final FilePath myPath; |
| private final String myRevision; |
| private final State myState; |
| |
| public IncomingChangeState(final Change change, final String revision, State state) { |
| myRevision = revision; |
| myStatus = change.getFileStatus(); |
| myPath = ChangesUtil.getFilePath(change); |
| myState = state; |
| } |
| |
| public static void header(final String location) { |
| INCOMING_LOG.debug("[------------- " + location + " --------------]"); |
| } |
| |
| public static void footer() { |
| INCOMING_LOG.debug("----------------------------"); |
| } |
| |
| public void logSelf() { |
| INCOMING_LOG.debug(myPath.getPresentableUrl() + " (" + myRevision + "): " + myStatus.getText() + " -> " + myState.myAccounted + " [" + myState.myName + |
| "] " + myState.myCode); |
| } |
| |
| public static enum State { |
| AFTER_DOES_NOT_MATTER_NON_LOCAL("Skipped", true, 101), |
| AFTER_DOES_NOT_MATTER_OUTSIDE_INCOMING("Skipped", true, 102), |
| AFTER_DOES_NOT_MATTER_ALIEN_PATH("Skipped", true, 103), |
| AFTER_DOES_NOT_MATTER_DELETED_FOUND_IN_INCOMING_LIST("deleted further", true, |
| 104), |
| |
| AFTER_EXISTS_LOCALLY_AVAILABLE("change found", true, 105), |
| AFTER_EXISTS_REVISION_NOT_LOADED("versioned item not found", false, 106), |
| AFTER_EXISTS_NOT_LOCALLY_AVAILABLE("change not found", false, 107), |
| |
| AFTER_NOT_EXISTS_LOCALLY_AVAILABLE("not exists but locally available", true, 108), |
| AFTER_NOT_EXISTS_MARKED_FOR_DELETION("marked for deletion", true, 109), |
| AFTER_NOT_EXISTS_SUBSEQUENTLY_DELETED("subsequently deleted", true, 110), |
| AFTER_NOT_EXISTS_OTHER("item missing", false, 111), |
| |
| BEFORE_DOES_NOT_MATTER_OUTSIDE("Skipped", true, 201), |
| BEFORE_NOT_EXISTS_DELETED_LOCALLY("locally deleted", false, 202), |
| BEFORE_NOT_EXISTS_ALREADY_DELETED("already deleted", true, 203), |
| BEFORE_UNVERSIONED_INSTEAD_OF_VERS_DELETED("unversioned instead of versioned", true, 204), |
| BEFORE_SAME_NAME_ADDED_AFTER_DELETION("item replaced", true, 205), |
| BEFORE_EXISTS_BUT_SHOULD_NOT("NOT deleted", false, 206); |
| |
| private final boolean myAccounted; |
| private final String myName; |
| private final int myCode; |
| |
| private State(final String name, final boolean accounted, final int code) { |
| myName = name; |
| myAccounted = accounted; |
| myCode = code; |
| } |
| } |
| } |