diff --git a/core/java/android/util/PoolFactory.java b/core/java/android/util/Pools.java
similarity index 95%
rename from core/java/android/util/PoolFactory.java
rename to core/java/android/util/Pools.java
index 4f72bf7..8edb3e6 100644
--- a/core/java/android/util/PoolFactory.java
+++ b/core/java/android/util/Pools.java
@@ -19,8 +19,8 @@
 /**
  * @hide
  */
-public class PoolFactory {
-    private PoolFactory() {
+public class Pools {
+    private Pools() {
     }
 
     public static <T extends Poolable<T>> Pool<T> simplePool(PoolableManager<T> manager) {
diff --git a/core/java/android/view/VelocityTracker.java b/core/java/android/view/VelocityTracker.java
index 256525a..c708f54 100644
--- a/core/java/android/view/VelocityTracker.java
+++ b/core/java/android/view/VelocityTracker.java
@@ -20,7 +20,7 @@
 import android.util.Log;
 import android.util.Poolable;
 import android.util.Pool;
-import android.util.PoolFactory;
+import android.util.Pools;
 import android.util.PoolableManager;
 
 /**
@@ -41,8 +41,8 @@
     static final int LONGEST_PAST_TIME = 200;
 
     static final VelocityTracker[] mPool = new VelocityTracker[1];
-    private static final Pool<VelocityTracker> sPool = PoolFactory.synchronizedPool(
-            PoolFactory.finitePool(new PoolableManager<VelocityTracker>() {
+    private static final Pool<VelocityTracker> sPool = Pools.synchronizedPool(
+            Pools.finitePool(new PoolableManager<VelocityTracker>() {
                 public VelocityTracker newInstance() {
                     return new VelocityTracker();
                 }
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index 8a65219..b26be66 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -47,7 +47,7 @@
 import android.util.SparseArray;
 import android.util.Poolable;
 import android.util.Pool;
-import android.util.PoolFactory;
+import android.util.Pools;
 import android.util.PoolableManager;
 import android.view.ContextMenu.ContextMenuInfo;
 import android.view.animation.Animation;
@@ -7890,8 +7890,8 @@
          */
         static class InvalidateInfo implements Poolable<InvalidateInfo> {
             private static final int POOL_LIMIT = 10;
-            private static final Pool<InvalidateInfo> sPool = PoolFactory.synchronizedPool(
-                    PoolFactory.finitePool(new PoolableManager<InvalidateInfo>() {
+            private static final Pool<InvalidateInfo> sPool = Pools.synchronizedPool(
+                    Pools.finitePool(new PoolableManager<InvalidateInfo>() {
                         public InvalidateInfo newInstance() {
                             return new InvalidateInfo();
                         }
