Author: lindner
Date: Fri Jan 23 14:35:40 2009
New Revision: 737212

URL: http://svn.apache.org/viewvc?rev=737212&view=rev
Log:
use Preconditions in a few places

Modified:
    
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/crypto/BasicBlobCrypter.java
    
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/GadgetFeatureRegistry.java
    
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/PipelinedDataPreloader.java
    
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/core/util/JsonContainerConf.java
    
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/ActivityHandler.java

Modified: 
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/crypto/BasicBlobCrypter.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/crypto/BasicBlobCrypter.java?rev=737212&r1=737211&r2=737212&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/crypto/BasicBlobCrypter.java
 (original)
+++ 
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/crypto/BasicBlobCrypter.java
 Fri Jan 23 14:35:40 2009
@@ -19,6 +19,7 @@
 package org.apache.shindig.common.crypto;
 
 import com.google.common.collect.Maps;
+import com.google.common.base.Preconditions;
 
 import org.apache.shindig.common.util.CharsetUtil;
 import org.apache.shindig.common.util.TimeSource;
@@ -102,10 +103,9 @@
   }
 
   private void init(byte[] masterKey) {
-    if (masterKey.length < MASTER_KEY_MIN_LEN) {
-      throw new IllegalArgumentException("Master key needs at least " +
-          MASTER_KEY_MIN_LEN + " bytes");
-    }
+    Preconditions.checkArgument(masterKey.length >= MASTER_KEY_MIN_LEN,
+        "Master key needs at least %s bytes", MASTER_KEY_MIN_LEN);
+
     cipherKey = deriveKey(CIPHER_KEY_LABEL, masterKey, Crypto.CIPHER_KEY_LEN);
     hmacKey = deriveKey(HMAC_KEY_LABEL, masterKey, 0);
   }
@@ -136,9 +136,9 @@
    */
   public String wrap(Map<String, String> in)
   throws BlobCrypterException {
-    if (in.containsKey(TIMESTAMP_KEY)) {
-      throw new IllegalArgumentException("No '" + TIMESTAMP_KEY + "' key 
allowed for BlobCrypter");
-    }
+    Preconditions.checkArgument(!in.containsKey(TIMESTAMP_KEY),
+        "No '%s' key allowed for BlobCrypter", TIMESTAMP_KEY);
+
     try {
       byte[] encoded = serializeAndTimestamp(in);
       byte[] cipherText = Crypto.aes128cbcEncrypt(cipherKey, encoded);

Modified: 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/GadgetFeatureRegistry.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/GadgetFeatureRegistry.java?rev=737212&r1=737211&r2=737212&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/GadgetFeatureRegistry.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/GadgetFeatureRegistry.java
 Fri Jan 23 14:35:40 2009
@@ -22,6 +22,7 @@
 import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
+import com.google.common.base.Preconditions;
 
 import com.google.inject.Inject;
 import com.google.inject.Singleton;
@@ -59,8 +60,8 @@
   /**
    * Creates a new feature registry and loads the specified features.
    *
-   * @param httpFetcher
-   * @param featureFiles
+   * @param httpFetcher HttpFetcher for retrieving content
+   * @param featureFiles Injected from shindig.features.default
    * @throws GadgetException
    */
   @Inject
@@ -82,10 +83,8 @@
    * @param feature Class implementing the feature.
    */
   public void register(GadgetFeature feature) {
-    if (graphComplete) {
-      throw new IllegalStateException("register should never be " +
-          "invoked after calling getLibraries");
-    }
+    Preconditions.checkState(!graphComplete,
+        "register should never be invoked after calling getLibraries");
     if (logger.isLoggable(Level.FINE)) logger.fine("Registering feature: " + 
feature.getName());
     if (isCore(feature)) {
       core.put(feature.getName(), feature);
@@ -99,6 +98,7 @@
   }
 
   /**
+   * @param feature the GadgetFeature to test
    * @return True if the entry is "core" (a dependency of all other features)
    */
   private boolean isCore(GadgetFeature feature) {

Modified: 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/PipelinedDataPreloader.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/PipelinedDataPreloader.java?rev=737212&r1=737211&r2=737212&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/PipelinedDataPreloader.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/preload/PipelinedDataPreloader.java
 Fri Jan 23 14:35:40 2009
@@ -34,6 +34,7 @@
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
+import com.google.common.base.Preconditions;
 import com.google.inject.Inject;
 
 import org.json.JSONArray;
@@ -170,13 +171,13 @@
           // Ignore, and use the HTTP response interval
         }
       }
-      
+
       // TODO: support non GET/POST methods
       String method = preload.getAttributes().get("method");
       if (method != null) {
         request.setMethod(method);
       }
-      
+
       // TODO: support params
       return new Data(requestPipeline.execute(request));
     }
@@ -223,9 +224,7 @@
 
   private Uri getSocialUri(GadgetContext context) {
     String jsonUri = config.get(context.getContainer(), "gadgets.osDataUri");
-    if (jsonUri == null) {
-      throw new NullPointerException("No JSON URI available for social 
preloads");
-    }
+    Preconditions.checkNotNull(jsonUri, "No JSON URI available for social 
preloads");
 
     UriBuilder builder = UriBuilder.parse(
         jsonUri.replace("%host%", context.getHost()))

Modified: 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/core/util/JsonContainerConf.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/core/util/JsonContainerConf.java?rev=737212&r1=737211&r2=737212&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/core/util/JsonContainerConf.java
 (original)
+++ 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/core/util/JsonContainerConf.java
 Fri Jan 23 14:35:40 2009
@@ -42,7 +42,6 @@
   private JSONObject containerJsonObject;
   private ContainerConfig config;
   private List<String> activityFieldsList;
-  private JSONArray personFieldsJsonArray;
 
   @Inject
   public JsonContainerConf() {
@@ -129,6 +128,7 @@
     }
     JSONObject osJsonObjectValue = null;
 
+    JSONArray personFieldsJsonArray;
     try {
       osJsonObjectValue = gfJsonObject.getJSONObject(osKey);
       JSONObject personFieldsJsonObject = osJsonObjectValue

Modified: 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/ActivityHandler.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/ActivityHandler.java?rev=737212&r1=737211&r2=737212&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/ActivityHandler.java
 (original)
+++ 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/ActivityHandler.java
 Fri Jan 23 14:35:40 2009
@@ -28,6 +28,7 @@
 import org.apache.shindig.social.opensocial.spi.CollectionOptions;
 
 import com.google.common.collect.Sets;
+import com.google.common.collect.Iterables;
 import com.google.inject.Inject;
 
 import java.util.List;
@@ -68,8 +69,8 @@
 
     Preconditions.requireNotEmpty(userIds, "No userId specified");
     Preconditions.requireSingular(userIds, "Multiple userIds not supported");
-
-    return service.deleteActivities(userIds.iterator().next(), 
request.getGroup(),
+    // Throws exceptions if userIds contains more than one element or zero 
elements
+    return service.deleteActivities(Iterables.getOnlyElement(userIds), 
request.getGroup(),
         request.getAppId(), activityIds, request.getToken());
   }
 
@@ -100,7 +101,7 @@
     // TODO(lryan) This seems reasonable to allow on PUT but we don't have an 
update verb.
     Preconditions.requireEmpty(activityIds, "Cannot specify activityId in 
create");
 
-    return service.createActivity(userIds.iterator().next(), 
request.getGroup(),
+    return service.createActivity(Iterables.getOnlyElement(userIds), 
request.getGroup(),
         request.getAppId(), request.getFields(),
         request.getTypedParameter("activity", Activity.class),
         request.getToken());
@@ -116,7 +117,7 @@
   @Override
   protected Future<?> handleGet(RequestItem request)
       throws SocialSpiException {
-       if (isValidSupportedFieldsRestCall(request)) { 
+       if (isValidSupportedFieldsRestCall(request)) {
          List<String> activityFieldsList = null;
          try {
                activityFieldsList = containerConf.getActivityFieldsList();
@@ -155,7 +156,7 @@
         // getSortBy(params), getFilterBy(params), getStartIndex(params), 
getCount(params),
         request.getFields(), options, request.getToken());
   }
-  
+
   private boolean isValidSupportedFieldsRestCall(RequestItem request) {
     String url = ((RestfulRequestItem)request).getUrl();
     Matcher supFieldsMatcher = activityPatternSupFields.matcher(url);


Reply via email to