1 /** 2 * Licensed to the Apache Software Foundation (ASF) under one or more 3 * contributor license agreements. See the NOTICE file distributed with 4 * this work for additional information regarding copyright ownership. 5 * The ASF licenses this file to You under the Apache License, Version 2.0 6 * (the "License"); you may not use this file except in compliance with 7 * the License. You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 18 package org.apache.geronimo.javamail.store.imap.connection; 19 import javax.mail.MessagingException; 20 21 /** 22 * Base class for all response messages. 23 * 24 * @version $Rev: 594520 $ $Date: 2007-11-13 07:57:39 -0500 (Tue, 13 Nov 2007) $ 25 */ 26 public class IMAPResponse { 27 // The original (raw) response data 28 protected byte[] response; 29 30 /** 31 * Create a response object from a server response line (normally, untagged). This includes 32 * doing the parsing of the response line. 33 * 34 * @param response The response line used to create the reply object. 35 */ 36 protected IMAPResponse(byte [] response) { 37 // set this as the current message and parse. 38 this.response = response; 39 } 40 41 /** 42 * Retrieve the raw response line data for this 43 * response message. Normally, this will be a complete 44 * single line response, unless there are quoted 45 * literals in the response data containing octet 46 * data. 47 * 48 * @return The byte array containing the response information. 49 */ 50 public byte[] getResponseData() { 51 return response; 52 } 53 54 /** 55 * Return the response message as a string value. 56 * This is intended for debugging purposes only. The 57 * response data might contain octet data that 58 * might not convert to character data appropriately. 59 * 60 * @return The string version of the response. 61 */ 62 public String toString() { 63 return new String(response); 64 } 65 } 66