/** * Called by the parser whenever a chunk is found. */ @Override public void record(Chunk chunk) { if (chunk.getChunkId() == RECIPIENT_SEARCH.id) { // TODO - parse recipientSearchChunk = (ByteChunk) chunk; } else if (chunk.getChunkId() == RECIPIENT_NAME.id) { recipientDisplayNameChunk = (StringChunk) chunk; } else if (chunk.getChunkId() == RECIPIENT_DISPLAY_NAME.id) { recipientNameChunk = (StringChunk) chunk; } else if (chunk.getChunkId() == RECIPIENT_EMAIL_ADDRESS.id) { recipientEmailChunk = (StringChunk) chunk; } else if (chunk.getChunkId() == RECIPIENT_SMTP_ADDRESS.id) { recipientSMTPChunk = (StringChunk) chunk; } else if (chunk.getChunkId() == DELIVERY_TYPE.id) { deliveryTypeChunk = (StringChunk) chunk; } else if (chunk instanceof PropertiesChunk) { recipientProperties = (PropertiesChunk) chunk; } // And add to the main list allChunks.add(chunk); }
/** * Called by the parser whenever a chunk is found. */ public void record(Chunk chunk) { if(chunk.getChunkId() == RECIPIENT_SEARCH.id) { // TODO - parse recipientSearchChunk = (ByteChunk)chunk; } else if(chunk.getChunkId() == RECIPIENT_NAME.id) { recipientDisplayNameChunk = (StringChunk)chunk; } else if(chunk.getChunkId() == RECIPIENT_DISPLAY_NAME.id) { recipientNameChunk = (StringChunk)chunk; } else if(chunk.getChunkId() == RECIPIENT_EMAIL_ADDRESS.id) { recipientEmailChunk = (StringChunk)chunk; } else if(chunk.getChunkId() == RECIPIENT_SMTP_ADDRESS.id) { recipientSMTPChunk = (StringChunk)chunk; } else if(chunk.getChunkId() == DELIVERY_TYPE.id) { deliveryTypeChunk = (StringChunk)chunk; } // And add to the main list allChunks.add(chunk); }
Chunk textChunk = null; for (Chunk chunk : msg.getMainChunks().getChunks()) { if (chunk.getChunkId() == MAPIProperty.BODY_HTML.id) { htmlChunk = chunk; if (chunk.getChunkId() == MAPIProperty.RTF_COMPRESSED.id) { rtfChunk = chunk; if (chunk.getChunkId() == MAPIProperty.BODY.id) { textChunk = chunk;
if(chunk.getChunkId() == ATTACH_ADDITIONAL_INFO.id) { else if(chunk.getChunkId() == ATTACH_CONTENT_BASE.id) { else if(chunk.getChunkId() == ATTACH_CONTENT_LOCATION.id) { else if(chunk.getChunkId() == ATTACH_DATA.id) { if(chunk instanceof ByteChunk) { attachData = (ByteChunk)chunk; else if(chunk.getChunkId() == ATTACH_DISPOSITION.id) { else if(chunk.getChunkId() == ATTACH_ENCODING.id) { else if(chunk.getChunkId() == ATTACH_EXTENSION.id) { attachExtension = (StringChunk)chunk; else if(chunk.getChunkId() == ATTACH_FILENAME.id) { attachFileName = (StringChunk)chunk; else if(chunk.getChunkId() == ATTACH_FLAGS.id) { else if(chunk.getChunkId() == ATTACH_LONG_FILENAME.id) { attachLongFileName = (StringChunk)chunk; else if(chunk.getChunkId() == ATTACH_LONG_PATHNAME.id) { else if(chunk.getChunkId() == ATTACH_MIME_TAG.id) { attachMimeTag = (StringChunk)chunk;
if(chunk.getChunkId() == MAPIProperty.MESSAGE_CLASS.id) { messageClass = (StringChunk)chunk; else if(chunk.getChunkId() == MAPIProperty.INTERNET_MESSAGE_ID.id) { messageId = (StringChunk)chunk; else if(chunk.getChunkId() == MAPIProperty.MESSAGE_SUBMISSION_ID.id) { else if(chunk.getChunkId() == MAPIProperty.RECEIVED_BY_ADDRTYPE.id) { sentByServerType = (StringChunk)chunk; else if(chunk.getChunkId() == MAPIProperty.TRANSPORT_MESSAGE_HEADERS.id) { messageHeaders = (StringChunk)chunk; else if(chunk.getChunkId() == MAPIProperty.CONVERSATION_TOPIC.id) { conversationTopic = (StringChunk)chunk; else if(chunk.getChunkId() == MAPIProperty.SUBJECT.id) { subjectChunk = (StringChunk)chunk; else if(chunk.getChunkId() == MAPIProperty.ORIGINAL_SUBJECT.id) { else if(chunk.getChunkId() == MAPIProperty.DISPLAY_TO.id) { displayToChunk = (StringChunk)chunk; else if(chunk.getChunkId() == MAPIProperty.DISPLAY_CC.id) { displayCCChunk = (StringChunk)chunk; else if(chunk.getChunkId() == MAPIProperty.DISPLAY_BCC.id) {
public void dump() throws IOException { ChunkGroup[] chunkGroups = POIFSChunkParser.parse(fs); for(ChunkGroup chunks : chunkGroups) { System.out.println(chunks.getClass().getSimpleName()); for(Chunk chunk : chunks.getChunks()) { MAPIProperty attr = MAPIProperty.get(chunk.getChunkId()); String idName = attr.id + " - " + attr.name; if(attr == MAPIProperty.UNKNOWN) { idName = chunk.getChunkId() + " - (unknown)"; } System.out.println( " " + idName + " - " + Types.asName(chunk.getType()) ); System.out.println( " " + chunk.toString() ); } System.out.println(); } }
public void record(Chunk chunk) { MAPIProperty prop = MAPIProperty.get(chunk.getChunkId());
/** * Called once the parent ChunkGroup has been populated, to match up the * Chunks in it with our Variable Sized Properties. */ protected void matchVariableSizedPropertiesToChunks() { // Index the Parent Group chunks for easy lookup // TODO Is this the right way? Map<Integer, Chunk> chunks = new HashMap<>(); for (Chunk chunk : parentGroup.getChunks()) { chunks.put(chunk.getChunkId(), chunk); } // Loop over our values, looking for chunk based ones for (PropertyValue val : properties.values()) { if (val instanceof ChunkBasedPropertyValue) { ChunkBasedPropertyValue cVal = (ChunkBasedPropertyValue) val; Chunk chunk = chunks.get(cVal.getProperty().id); // System.err.println(cVal.getProperty() + " = " + cVal + " -> " // + HexDump.toHex(cVal.data)); // TODO Make sense of the raw offset value if (chunk != null) { cVal.setValue(chunk); } else { logger.log(POILogger.WARN, "No chunk found matching Property " + cVal); } } } }
out.println(chunks.getClass().getSimpleName()); for(Chunk chunk : chunks.getChunks()) { MAPIProperty attr = MAPIProperty.get(chunk.getChunkId()); String idName = attr.id + " - " + attr.name; if(attr == MAPIProperty.UNKNOWN) { idName = chunk.getChunkId() + " - (unknown)";
final int chunkId = chunk.getChunkId(); if (chunkId == ATTACH_DATA.id) { if (chunk instanceof ByteChunk) {
Chunk textChunk = null; for (Chunk chunk : msg.getMainChunks().getChunks()) { if (chunk.getChunkId() == MAPIProperty.BODY_HTML.id) { htmlChunk = chunk; if (chunk.getChunkId() == MAPIProperty.RTF_COMPRESSED.id) { rtfChunk = chunk; if (chunk.getChunkId() == MAPIProperty.BODY.id) { textChunk = chunk;
Chunk textChunk = null; for (Chunk chunk : msg.getMainChunks().getChunks()) { if (chunk.getChunkId() == MAPIProperty.BODY_HTML.id) { htmlChunk = chunk; if (chunk.getChunkId() == MAPIProperty.RTF_COMPRESSED.id) { rtfChunk = chunk; if (chunk.getChunkId() == MAPIProperty.BODY.id) { textChunk = chunk;
Chunk textChunk = null; for (Chunk chunk : msg.getMainChunks().getChunks()) { if (chunk.getChunkId() == MAPIProperty.BODY_HTML.id) { htmlChunk = chunk; if (chunk.getChunkId() == MAPIProperty.RTF_COMPRESSED.id) { rtfChunk = chunk; if (chunk.getChunkId() == MAPIProperty.BODY.id) { textChunk = chunk;