project leak
[fedora-idea.git] / plugins / svn4idea / src / org / jetbrains / idea / svn / SvnChangedFile.java
blob2bd5ee49710253061a87e54eb01cb038d2b6d954
1 /*
2 * Copyright 2000-2009 JetBrains s.r.o.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
16 package org.jetbrains.idea.svn;
18 import com.intellij.openapi.vcs.FilePath;
19 import org.tmatesoft.svn.core.wc.SVNStatus;
21 class SvnChangedFile {
22 private final FilePath myFilePath;
23 private final SVNStatus myStatus;
24 private String myCopyFromURL;
26 public SvnChangedFile(final FilePath filePath, final SVNStatus status) {
27 myFilePath = filePath;
28 myStatus = status;
31 public SvnChangedFile(final FilePath filePath, final SVNStatus status, final String copyFromURL) {
32 myFilePath = filePath;
33 myStatus = status;
34 myCopyFromURL = copyFromURL;
37 public FilePath getFilePath() {
38 return myFilePath;
41 public SVNStatus getStatus() {
42 return myStatus;
45 public String getCopyFromURL() {
46 if (myCopyFromURL == null) {
47 return myStatus.getCopyFromURL();
49 return myCopyFromURL;
52 @Override
53 public String toString() {
54 return myFilePath.getPath();
57 @Override
58 public boolean equals(final Object o) {
59 if (this == o) return true;
60 if (o == null || getClass() != o.getClass()) return false;
62 final SvnChangedFile that = (SvnChangedFile)o;
64 if (myFilePath != null ? !myFilePath.equals(that.myFilePath) : that.myFilePath != null) return false;
66 return true;
69 @Override
70 public int hashCode() {
71 return myFilePath != null ? myFilePath.hashCode() : 0;