Author: scottbw
Date: Fri Feb  7 13:40:53 2014
New Revision: 1565646

URL: http://svn.apache.org/r1565646
Log:
if no service provider is defined, use the default provider

Modified:
    
wookie/trunk/wookie-services/wookie-spi/src/main/java/org/apache/wookie/services/PreferencesService.java

Modified: 
wookie/trunk/wookie-services/wookie-spi/src/main/java/org/apache/wookie/services/PreferencesService.java
URL: 
http://svn.apache.org/viewvc/wookie/trunk/wookie-services/wookie-spi/src/main/java/org/apache/wookie/services/PreferencesService.java?rev=1565646&r1=1565645&r2=1565646&view=diff
==============================================================================
--- 
wookie/trunk/wookie-services/wookie-spi/src/main/java/org/apache/wookie/services/PreferencesService.java
 (original)
+++ 
wookie/trunk/wookie-services/wookie-spi/src/main/java/org/apache/wookie/services/PreferencesService.java
 Fri Feb  7 13:40:53 2014
@@ -19,7 +19,8 @@ package org.apache.wookie.services;
 import java.util.Collection;
 import java.util.ServiceLoader;
 
-import org.apache.wookie.w3c.IPreference;
+import org.apache.wookie.beans.IPreference;
+import org.apache.wookie.services.impl.DefaultPreferencesService;
 
 /**
  * The PreferencesService is the SPI for plugins that implement a preferences 
service; this service
@@ -55,16 +56,24 @@ public interface PreferencesService {
                private static PreferencesService provider;
                
            public static PreferencesService getInstance() {
+               //
+               // Use the service loader to load an implementation if one is 
available
+               //
                if (provider == null){
                        ServiceLoader<PreferencesService> ldr = 
ServiceLoader.load(PreferencesService.class);
                        for (PreferencesService service : ldr) {
                                // We are only expecting one
                                provider = service;
                        }
-               }if (provider != null){
-                       return provider;
                }
-               throw new Error ("No Preferences Service Provider registered");
+               //
+               // If no service provider is found, use the default
+               //
+               if (provider == null){
+                       provider = new DefaultPreferencesService();
+               }
+               
+               return provider;
            }
        }
 }


Reply via email to