blob: 847aff0fe2c79b7162472adc84e908d2411dd107 [file] [log] [blame]
/****************************************************************
* Licensed to the Apache Software Foundation (ASF) under one *
* or more contributor license agreements. See the NOTICE file *
* distributed with this work for additional information *
* regarding copyright ownership. The ASF licenses this file *
* to you 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 org.apache.james.mime4j.parser;
/**
* Enumeration of states an entity is expected to go through
* in the process of the MIME stream parsing.
*/
public interface EntityStates {
/**
* This token indicates, that the MIME stream has been completely
* and successfully parsed, and no more data is available.
*/
public static final int T_END_OF_STREAM = -1;
/**
* This token indicates, that the MIME stream is currently
* at the beginning of a message.
*/
public static final int T_START_MESSAGE = 0;
/**
* This token indicates, that the MIME stream is currently
* at the end of a message.
*/
public static final int T_END_MESSAGE = 1;
/**
* This token indicates, that a raw entity is currently being processed.
* You may call {@link #getContentStream()} to obtain the raw entity
* data.
*/
public static final int T_RAW_ENTITY = 2;
/**
* This token indicates, that a message parts headers are now
* being parsed.
*/
public static final int T_START_HEADER = 3;
/**
* This token indicates, that a message parts field has now
* been parsed. You may call {@link #getField()} to obtain the
* raw field contents.
*/
public static final int T_FIELD = 4;
/**
* This token indicates, that part headers have now been
* parsed.
*/
public static final int T_END_HEADER = 5;
/**
* This token indicates, that a multipart body is being parsed.
*/
public static final int T_START_MULTIPART = 6;
/**
* This token indicates, that a multipart body has been parsed.
*/
public static final int T_END_MULTIPART = 7;
/**
* This token indicates, that a multiparts preamble is being
* parsed. You may call {@link #getContentStream()} to access the
* preamble contents.
*/
public static final int T_PREAMBLE = 8;
/**
* This token indicates, that a multiparts epilogue is being
* parsed. You may call {@link #getContentStream()} to access the
* epilogue contents.
*/
public static final int T_EPILOGUE = 9;
/**
* This token indicates, that the MIME stream is currently
* at the beginning of a body part.
*/
public static final int T_START_BODYPART = 10;
/**
* This token indicates, that the MIME stream is currently
* at the end of a body part.
*/
public static final int T_END_BODYPART = 11;
/**
* This token indicates, that an atomic entity is being parsed.
* Use {@link #getContentStream()} to access the entity contents.
*/
public static final int T_BODY = 12;
}