private Map<String, String> readManifestIntoMap(Manifest mf){
HashMap<String, String> props = new HashMap<String, String>();
Attributes mainAttrs = mf.getMainAttributes();
if (mainAttrs!=null){
Set<Entry<Object, Object>> attributeSet = mainAttrs.entrySet();
if (attributeSet != null){
// Copy all the manifest headers across. The entry set should be a set of
// Name to String mappings, by calling String.valueOf we do the conversion
// to a string and we do not NPE.
for (Map.Entry<Object, Object> entry : attributeSet) {