[utilities COMMIT] in /spring-extensions/trunk: pom.xml src/main/java/net/shibboleth/ext/spring/factory/DomDocumentFa...

noreply at shibboleth.net noreply at shibboleth.net
Mon Apr 2 13:59:10 BST 2012


Author: lajoie
Date: Mon Apr  2 13:59:09 2012
New Revision: 264

URL: http://svn.shibboleth.net/view/utilities?rev=264&view=rev
Log:
Make java-support a non-optional dep
Add some constraint annotations, constraint checking, and error checking

Modified:
    spring-extensions/trunk/pom.xml
    spring-extensions/trunk/src/main/java/net/shibboleth/ext/spring/factory/DomDocumentFactoryBean.java
    spring-extensions/trunk/src/main/java/net/shibboleth/ext/spring/factory/PrivateKeyFactoryBean.java
    spring-extensions/trunk/src/main/java/net/shibboleth/ext/spring/factory/PublicKeyFactoryBean.java
    spring-extensions/trunk/src/main/java/net/shibboleth/ext/spring/factory/X509CertificateChainFactoryBean.java
    spring-extensions/trunk/src/main/java/net/shibboleth/ext/spring/factory/X509CertificateFactoryBean.java

Modified: spring-extensions/trunk/pom.xml
URL: http://svn.shibboleth.net/view/utilities/spring-extensions/trunk/pom.xml?rev=264&r1=263&r2=264&view=diff
==============================================================================
--- spring-extensions/trunk/pom.xml (original)
+++ spring-extensions/trunk/pom.xml Mon Apr  2 13:59:09 2012
@@ -59,8 +59,6 @@
             <groupId>net.shibboleth.utilities</groupId>
             <artifactId>java-support</artifactId>
             <version>1.0.0-SNAPSHOT</version>
-            <!-- Required for the DomDocumentFactoryBean class -->
-            <optional>true</optional>
         </dependency>
 
         <!-- Provided dependencies -->

Modified: spring-extensions/trunk/src/main/java/net/shibboleth/ext/spring/factory/DomDocumentFactoryBean.java
URL: http://svn.shibboleth.net/view/utilities/spring-extensions/trunk/src/main/java/net/shibboleth/ext/spring/factory/DomDocumentFactoryBean.java?rev=264&r1=263&r2=264&view=diff
==============================================================================
--- spring-extensions/trunk/src/main/java/net/shibboleth/ext/spring/factory/DomDocumentFactoryBean.java (original)
+++ spring-extensions/trunk/src/main/java/net/shibboleth/ext/spring/factory/DomDocumentFactoryBean.java Mon Apr  2 13:59:09 2012
@@ -17,15 +17,17 @@
 
 package net.shibboleth.ext.spring.factory;
 
+import javax.annotation.Nonnull;
+
+import net.shibboleth.utilities.java.support.logic.Assert;
 import net.shibboleth.utilities.java.support.resource.Resource;
 import net.shibboleth.utilities.java.support.xml.BasicParserPool;
 
+import org.springframework.beans.factory.BeanCreationException;
 import org.springframework.beans.factory.FactoryBean;
 import org.w3c.dom.Document;
 
-/**
- * Spring bean factory for producing a {@link Document} from a resource.
- */
+/** Spring bean factory for producing a {@link Document} from a resource. */
 public class DomDocumentFactoryBean implements FactoryBean<Document> {
 
     /** Resource to load the document from. */
@@ -42,8 +44,8 @@
      *
      * @param resource resource, never null
      */
-    public void setDocumentResource(final Resource resource) {
-        documentResource = resource;
+    public void setDocumentResource(@Nonnull final Resource resource) {
+        documentResource = Assert.isNull(resource, "XML Resource can not be null");
     }
 
     /**
@@ -51,20 +53,29 @@
      *
      * @param pool parser pool, never null.
      */
-    public void setParserPool(final BasicParserPool pool) {
+    public void setParserPool(@Nonnull final BasicParserPool pool) {
         parserPool = pool;
     }
 
     /** {@inheritDoc} */
-    public Document getObject() throws Exception {
+    @Nonnull public synchronized Document getObject() throws Exception {
         if (document == null) {
+            if(documentResource == null){
+                throw new BeanCreationException("Document resource must be provided in order to use this factory.");
+            }
+            
+            if(parserPool == null){
+                throw new BeanCreationException("Parser pool must be provided in order to use this factory.");
+            }
+            
             document = parserPool.parse(documentResource.getInputStream());
         }
+        
         return document;
     }
 
     /** {@inheritDoc} */
-    public Class<?> getObjectType() {
+    @Nonnull public Class<?> getObjectType() {
         return Document.class;
     }
 

Modified: spring-extensions/trunk/src/main/java/net/shibboleth/ext/spring/factory/PrivateKeyFactoryBean.java
URL: http://svn.shibboleth.net/view/utilities/spring-extensions/trunk/src/main/java/net/shibboleth/ext/spring/factory/PrivateKeyFactoryBean.java?rev=264&r1=263&r2=264&view=diff
==============================================================================
--- spring-extensions/trunk/src/main/java/net/shibboleth/ext/spring/factory/PrivateKeyFactoryBean.java (original)
+++ spring-extensions/trunk/src/main/java/net/shibboleth/ext/spring/factory/PrivateKeyFactoryBean.java Mon Apr  2 13:59:09 2012
@@ -22,7 +22,14 @@
 import java.security.PrivateKey;
 import java.security.Security;
 
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+

[... 203 lines stripped ...]


More information about the commits mailing list