1afca3a690de8d057dca24050db556880fa4721e6chrismair/* 2afca3a690de8d057dca24050db556880fa4721e6chrismair * Copyright 2008 the original author or authors. 3afca3a690de8d057dca24050db556880fa4721e6chrismair * 4afca3a690de8d057dca24050db556880fa4721e6chrismair * Licensed under the Apache License, Version 2.0 (the "License"); 5afca3a690de8d057dca24050db556880fa4721e6chrismair * you may not use this file except in compliance with the License. 6afca3a690de8d057dca24050db556880fa4721e6chrismair * You may obtain a copy of the License at 7afca3a690de8d057dca24050db556880fa4721e6chrismair * 8afca3a690de8d057dca24050db556880fa4721e6chrismair * http://www.apache.org/licenses/LICENSE-2.0 9afca3a690de8d057dca24050db556880fa4721e6chrismair * 10afca3a690de8d057dca24050db556880fa4721e6chrismair * Unless required by applicable law or agreed to in writing, software 11afca3a690de8d057dca24050db556880fa4721e6chrismair * distributed under the License is distributed on an "AS IS" BASIS, 12afca3a690de8d057dca24050db556880fa4721e6chrismair * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13afca3a690de8d057dca24050db556880fa4721e6chrismair * See the License for the specific language governing permissions and 14afca3a690de8d057dca24050db556880fa4721e6chrismair * limitations under the License. 15afca3a690de8d057dca24050db556880fa4721e6chrismair */ 16afca3a690de8d057dca24050db556880fa4721e6chrismairpackage org.mockftpserver.fake.filesystem; 17afca3a690de8d057dca24050db556880fa4721e6chrismair 18afca3a690de8d057dca24050db556880fa4721e6chrismairimport org.mockftpserver.core.MockFtpServerException; 19afca3a690de8d057dca24050db556880fa4721e6chrismair 20afca3a690de8d057dca24050db556880fa4721e6chrismair/** 21afca3a690de8d057dca24050db556880fa4721e6chrismair * Represents an error that occurs while performing a FileSystem operation. 22afca3a690de8d057dca24050db556880fa4721e6chrismair * 23afca3a690de8d057dca24050db556880fa4721e6chrismair * @author Chris Mair 24afca3a690de8d057dca24050db556880fa4721e6chrismair * @version $Revision$ - $Date$ 25afca3a690de8d057dca24050db556880fa4721e6chrismair */ 26afca3a690de8d057dca24050db556880fa4721e6chrismairpublic class FileSystemException extends MockFtpServerException { 27afca3a690de8d057dca24050db556880fa4721e6chrismair 28afca3a690de8d057dca24050db556880fa4721e6chrismair /** 29afca3a690de8d057dca24050db556880fa4721e6chrismair * The path involved in the file system operation that caused the exception 30afca3a690de8d057dca24050db556880fa4721e6chrismair */ 31afca3a690de8d057dca24050db556880fa4721e6chrismair private String path; 32afca3a690de8d057dca24050db556880fa4721e6chrismair 33afca3a690de8d057dca24050db556880fa4721e6chrismair /** 34afca3a690de8d057dca24050db556880fa4721e6chrismair * The message key for the exception message 35afca3a690de8d057dca24050db556880fa4721e6chrismair */ 36afca3a690de8d057dca24050db556880fa4721e6chrismair private String messageKey; 37afca3a690de8d057dca24050db556880fa4721e6chrismair 38afca3a690de8d057dca24050db556880fa4721e6chrismair /** 39afca3a690de8d057dca24050db556880fa4721e6chrismair * Construct a new instance for the specified path and message key 40afca3a690de8d057dca24050db556880fa4721e6chrismair * 41afca3a690de8d057dca24050db556880fa4721e6chrismair * @param path - the path involved in the file system operation that caused the exception 42afca3a690de8d057dca24050db556880fa4721e6chrismair * @param messageKey - the exception message key 43afca3a690de8d057dca24050db556880fa4721e6chrismair */ 44afca3a690de8d057dca24050db556880fa4721e6chrismair public FileSystemException(String path, String messageKey) { 45afca3a690de8d057dca24050db556880fa4721e6chrismair super(path); 46afca3a690de8d057dca24050db556880fa4721e6chrismair this.path = path; 47afca3a690de8d057dca24050db556880fa4721e6chrismair this.messageKey = messageKey; 48afca3a690de8d057dca24050db556880fa4721e6chrismair } 49afca3a690de8d057dca24050db556880fa4721e6chrismair 50afca3a690de8d057dca24050db556880fa4721e6chrismair /** 51954ee7de942a83d2cba85940f8bac0f9d233fbb0chrismair * @param path - the path involved in the file system operation that caused the exception 52954ee7de942a83d2cba85940f8bac0f9d233fbb0chrismair * @param messageKey - the exception message key 53954ee7de942a83d2cba85940f8bac0f9d233fbb0chrismair * @param cause - the exception cause, wrapped by this exception 54afca3a690de8d057dca24050db556880fa4721e6chrismair */ 55afca3a690de8d057dca24050db556880fa4721e6chrismair public FileSystemException(String path, String messageKey, Throwable cause) { 56954ee7de942a83d2cba85940f8bac0f9d233fbb0chrismair super(path, cause); 57afca3a690de8d057dca24050db556880fa4721e6chrismair this.path = path; 58afca3a690de8d057dca24050db556880fa4721e6chrismair this.messageKey = messageKey; 59afca3a690de8d057dca24050db556880fa4721e6chrismair } 60afca3a690de8d057dca24050db556880fa4721e6chrismair 61afca3a690de8d057dca24050db556880fa4721e6chrismair public String getPath() { 62afca3a690de8d057dca24050db556880fa4721e6chrismair return path; 63afca3a690de8d057dca24050db556880fa4721e6chrismair } 64afca3a690de8d057dca24050db556880fa4721e6chrismair 65afca3a690de8d057dca24050db556880fa4721e6chrismair public void setPath(String path) { 66afca3a690de8d057dca24050db556880fa4721e6chrismair this.path = path; 67afca3a690de8d057dca24050db556880fa4721e6chrismair } 68afca3a690de8d057dca24050db556880fa4721e6chrismair 69afca3a690de8d057dca24050db556880fa4721e6chrismair public String getMessageKey() { 70afca3a690de8d057dca24050db556880fa4721e6chrismair return messageKey; 71afca3a690de8d057dca24050db556880fa4721e6chrismair } 72afca3a690de8d057dca24050db556880fa4721e6chrismair 73afca3a690de8d057dca24050db556880fa4721e6chrismair public void setMessageKey(String messageKey) { 74afca3a690de8d057dca24050db556880fa4721e6chrismair this.messageKey = messageKey; 75afca3a690de8d057dca24050db556880fa4721e6chrismair } 76afca3a690de8d057dca24050db556880fa4721e6chrismair 77afca3a690de8d057dca24050db556880fa4721e6chrismair} 78