[java-opensaml COMMIT] /trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/config/ESAPISecurityConfig.java

noreply at shibboleth.net noreply at shibboleth.net
Wed Mar 6 15:28:46 EST 2013


Author: scantor
Date: Wed Mar  6 15:28:46 2013
New Revision: 3246

URL: http://svn.shibboleth.net/view/java-opensaml?rev=3246&view=rev
Log:
OSJ-28: ported java-opensaml2 1587

Modified:
    trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/config/ESAPISecurityConfig.java

Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/config/ESAPISecurityConfig.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/config/ESAPISecurityConfig.java?rev=3246&r1=3245&r2=3246&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/config/ESAPISecurityConfig.java (original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/config/ESAPISecurityConfig.java Wed Mar  6 15:28:46 2013
@@ -23,6 +23,8 @@
 import java.util.List;
 import java.util.regex.Pattern;
 
+import javax.annotation.Nonnull;
+
 import org.owasp.esapi.SecurityConfiguration;
 
 /**
@@ -30,10 +32,27 @@
  */
 public class ESAPISecurityConfig implements SecurityConfiguration {
 
+    /** The singleton instance of this class. */
+    private static volatile SecurityConfiguration instance;
+    
     /** Constructor. */
     public ESAPISecurityConfig() {
     }
 
+    /**
+     * Factory method which implements the singleton pattern per the ESAPI reference impl.
+     *
+     * @return the singleton instance of this class
+     */
+    @Nonnull public static SecurityConfiguration getInstance() {
+        synchronized (ESAPISecurityConfig.class) {
+            if ( instance == null ) {
+                instance = new ESAPISecurityConfig();
+            }
+        }
+        return instance;
+    }
+    
     /** {@inheritDoc} */
     public String getAccessControlImplementation() {
         return null;



More information about the commits mailing list