You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by br...@apache.org on 2005/10/14 08:08:55 UTC
svn commit: r321028 - in
/maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver:
ManifestSection.java MavenArchiveConfiguration.java MavenArchiver.java
Author: brett
Date: Thu Oct 13 23:08:51 2005
New Revision: 321028
URL: http://svn.apache.org/viewcvs?rev=321028&view=rev
Log:
PR: MNG-1202
Submitted by: Mark Russell
add support for sections in the manifest
Added:
maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/ManifestSection.java (with props)
Modified:
maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiveConfiguration.java
maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java
Added: maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/ManifestSection.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/ManifestSection.java?rev=321028&view=auto
==============================================================================
--- maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/ManifestSection.java (added)
+++ maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/ManifestSection.java Thu Oct 13 23:08:51 2005
@@ -0,0 +1,40 @@
+package org.apache.maven.archiver;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class ManifestSection {
+
+ private String name = null;
+
+ private Map manifestEntries = new HashMap();
+
+ public void setName( String name ) {
+ this.name = name;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void addManifestEntry( Object key, Object value )
+ {
+ manifestEntries.put( key, value );
+ }
+
+ public void addManifestEntries( Map map )
+ {
+ manifestEntries.putAll( map );
+ }
+
+ public boolean isManifestEntriesEmpty()
+ {
+ return manifestEntries.isEmpty();
+ }
+
+ public Map getManifestEntries()
+ {
+ return manifestEntries;
+ }
+
+}
Propchange: maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/ManifestSection.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/ManifestSection.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiveConfiguration.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiveConfiguration.java?rev=321028&r1=321027&r2=321028&view=diff
==============================================================================
--- maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiveConfiguration.java (original)
+++ maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiveConfiguration.java Thu Oct 13 23:08:51 2005
@@ -17,7 +17,9 @@
*/
import java.io.File;
+import java.util.ArrayList;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
/**
@@ -39,6 +41,8 @@
private Map manifestEntries = new HashMap();
+ private List manifestSections = new ArrayList();
+
public boolean isCompress()
{
return compress;
@@ -101,5 +105,21 @@
public Map getManifestEntries()
{
return manifestEntries;
+ }
+
+ public void addManifestSection( ManifestSection section ) {
+ manifestSections.add( section );
+ }
+
+ public void addManifestSections( List list ) {
+ manifestSections.addAll( list );
+ }
+
+ public boolean isManifestSectionsEmpty() {
+ return manifestSections.isEmpty();
+ }
+
+ public List getManifestSections() {
+ return manifestSections;
}
}
Modified: maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java?rev=321028&r1=321027&r2=321028&view=diff
==============================================================================
--- maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java (original)
+++ maven/components/trunk/maven-archiver/src/main/java/org/apache/maven/archiver/MavenArchiver.java Thu Oct 13 23:08:51 2005
@@ -293,6 +293,32 @@
}
}
+ // any custom manifest sections in the archive configuration manifest?
+ if ( !archiveConfiguration.isManifestSectionsEmpty() )
+ {
+ List sections = archiveConfiguration.getManifestSections();
+ for ( Iterator iter = sections.iterator(); iter.hasNext(); )
+ {
+ ManifestSection section = (ManifestSection) iter.next();
+ Manifest.Section theSection = new Manifest.Section();
+ theSection.setName( section.getName() );
+
+ if( !section.isManifestEntriesEmpty() ) {
+ Map entries = section.getManifestEntries();
+ Set keys = entries.keySet();
+ for ( Iterator it = keys.iterator(); it.hasNext(); )
+ {
+ String key = (String) it.next();
+ String value = (String) entries.get( key );
+ Manifest.Attribute attr = new Manifest.Attribute( key, value );
+ theSection.addConfiguredAttribute( attr );
+ }
+ }
+
+ manifest.addConfiguredSection( theSection );
+ }
+ }
+
// Configure the jar
archiver.addConfiguredManifest( manifest );