[jboss-svn-commits] JBoss Common SVN: r3443 - declarchive/trunk/api/src/main/java/org/jboss/declarchive/api.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Aug 12 00:24:37 EDT 2009


Author: ALRubinger
Date: 2009-08-12 00:24:34 -0400 (Wed, 12 Aug 2009)
New Revision: 3443

Modified:
   declarchive/trunk/api/src/main/java/org/jboss/declarchive/api/VfsMemoryArchiveFactory.java
Log:
[TMPARCH-3] Hack in a mechanism to return an expected type from Archive Factory

Modified: declarchive/trunk/api/src/main/java/org/jboss/declarchive/api/VfsMemoryArchiveFactory.java
===================================================================
--- declarchive/trunk/api/src/main/java/org/jboss/declarchive/api/VfsMemoryArchiveFactory.java	2009-08-11 22:46:11 UTC (rev 3442)
+++ declarchive/trunk/api/src/main/java/org/jboss/declarchive/api/VfsMemoryArchiveFactory.java	2009-08-12 04:24:34 UTC (rev 3443)
@@ -90,7 +90,8 @@
     * @param name
     * @throws IllegalArgumentException If the name is not specified
     */
-   public static Archive<?> createVirtualArchive(final String name) throws IllegalArgumentException
+   public static <T extends Archive<T>> T createVirtualArchive(final String name, final Class<T> archiveType)
+         throws IllegalArgumentException
    {
       // Precondition check
       if (name == null || name.length() == 0)
@@ -121,10 +122,10 @@
       }
 
       // Cast 
-      final Archive<?> archive;
+      final T archive;
       try
       {
-         archive = Archive.class.cast(obj);
+         archive = archiveType.cast(obj);
       }
       catch (final ClassCastException cce)
       {



More information about the jboss-svn-commits mailing list