<assembly>
    <id>bin</id>
    <baseDirectory>rampart-${version}</baseDirectory>
    <formats>
        <format>zip</format>
    </formats>
    <dependencySets>
        <dependencySet>
            <outputDirectory>modules</outputDirectory>
            <includes>
                <include>org.apache.rampart:rampart:mar</include>
                <include>org.apache.rampart:rahas:mar</include>
            </includes>
        </dependencySet>
        <dependencySet>
            <outputDirectory>lib</outputDirectory>
            <includes>
                <include>org.apache.santuario:xmlsec:jar</include>
                <include>org.apache.ws.security:wss4j:jar</include>
                <include>org.bouncycastle:bcprov-jdk15on:jar</include>
                <include>org.apache.rampart:rampart-core:jar</include>
                <include>org.apache.rampart:rampart-policy:jar</include>
                <include>org.apache.rampart:rampart-trust:jar</include>
                <include>org.opensaml:opensaml:jar</include>
                <include>org.opensaml:xmltooling:jar</include>
                <include>org.owasp.esapi:esapi:jar</include>
                <include>joda-time:joda-time:jar</include>
                <include>org.slf4j:slf4j-api:jar</include>
                <include>org.slf4j:slf4j-jcl:jar</include>
                <include>velocity:velocity:jar</include>
                <include>commons-collections:commons-collections:jar</include>
                <include>org.opensaml:openws:jar</include>
                <include>commons-lang:commons-lang:jar</include>
                <include>org.apache.xerces:xercesImpl:jar</include>
                <include>org.apache.xerces:resolver:jar</include>
                <include>org.apache.xerces:serializer:jar</include>
                <include>org.owasp.esapi:esapi:jar</include>
                <include>ca.juliusdavies:not-yet-commons-ssl</include>
            </includes>
        </dependencySet>
        <dependencySet>
            <outputDirectory>docs/apidocs</outputDirectory>
            <includes>
                <include>*:apidocs:zip</include>
            </includes>
            <useProjectArtifact>false</useProjectArtifact>
            <unpack>true</unpack>
        </dependencySet>
    </dependencySets>
    <fileSets>
        <fileSet>
            <directory>../rampart-samples</directory>
            <outputDirectory>samples</outputDirectory>
            <excludes>
                <exclude>pom.xml</exclude>
                <exclude>target/**</exclude>
            </excludes>
        </fileSet>
        <fileSet>
            <directory>../../legal</directory>
            <outputDirectory>lib</outputDirectory>
        </fileSet>
        <fileSet>
            <directory>src/main/files</directory>
            <outputDirectory>.</outputDirectory>
        </fileSet>
    </fileSets>

    <files>
        <file>
            <source>../../README</source>
            <filtered>true</filtered>
        </file>
        <file>
            <source>../../LICENSE</source>
        </file>
        <file>
            <source>../../NOTICE</source>
        </file>
        <file>
            <source>../../src/site/markdown/release-notes/${release_version}.md</source>
            <destName>RELEASE-NOTE</destName>
        </file>
    </files>

</assembly>
