code: public void parseHeaders () throws IOException {
  		if(!parsedHeader) {
  			arcRecord.skipHttpHeader();
  			// copy all HTTP headers to metaData, prefixing with 
  			// HTTP_HEADER_PREFIX
  			Header[] headers = arcRecord.getHttpHeaders();
  			if (headers != null) {
  				for (int i = 0; i < headers.length; i++) {
  					String value = headers[i].getValue();
  					String name = headers[i].getName();
  					metaData.put(HTTP_HEADER_PREFIX + name,value);
  					if(name.toUpperCase().contains(
  							HttpHeaderOperation.HTTP_TRANSFER_ENC_HEADER)) {
  						if(value.toUpperCase().contains(
  								HttpHeaderOperation.HTTP_CHUNKED_ENCODING_HEADER)) {
  							setChunkedEncoding();
  						}
  					}
  				}
  			}
  
  			// copy all ARC record header fields to metaData, prefixing with 
  			// ARC_META_PREFIX
  			Map<String,Object> headerMetaMap = arcRecord.getMetaData().getHeaderFields();
  			Set<String> keys = headerMetaMap.keySet();
  			Iterator<String> itr = keys.iterator();
  			while(itr.hasNext()) {
  				String metaKey = itr.next();
  				Object value = headerMetaMap.get(metaKey);
  				String metaValue = "";
  				if(value != null) {
  					metaValue = value.toString();
  				}
  				metaData.put(ARC_META_PREFIX + metaKey,metaValue);
  			}
  		
  			parsedHeader = true;			
  		}
  	}
docs: parse the headers on the underlying ARC record, and extract all
  @throws IOException