public List getMessageHeaders()

in mailbox/store/src/main/java/org/apache/james/mailbox/store/streaming/PartContentBuilder.java [262:303]


    public List<Header> getMessageHeaders() throws IOException, MimeException {
        final List<Header> results;
        if (empty) {
            results = Collections.emptyList();
        } else {
            results = new ArrayList<>();
            try {
                advancedToMessage();

                for (EntityState state = parser.getState(); state != EntityState.T_END_HEADER; state = parser
                        .next()) {
                    switch (state) {
                        case T_END_OF_STREAM:
                            throw new IOException("Unexpected EOF");

                        case T_FIELD:
                            final String fieldValue = parser.getField().getBody().trim();
                            final String fieldName = parser.getField().getName();
                            Header header = new Header(fieldName, fieldValue);
                            results.add(header);
                            break;
                    case T_BODY:
                    case T_END_BODYPART:
                    case T_END_HEADER:
                    case T_END_MESSAGE:
                    case T_END_MULTIPART:
                    case T_EPILOGUE:
                    case T_PREAMBLE:
                    case T_START_HEADER:
                    case T_START_MESSAGE:
                    case T_START_MULTIPART:
                    case T_RAW_ENTITY:
                    case T_START_BODYPART:
                        break;
                    }
                }
            } catch (UnexpectedEOFException e) {
                // No headers found
            }
        }
        return results;
    }