diff --git a/usage/src/main/java/com/ning/billing/usage/glue/CachingDefaultTimelineDaoProvider.java b/usage/src/main/java/com/ning/billing/usage/glue/CachingDefaultTimelineDaoProvider.java
new file mode 100644
index 0000000..275d274
--- /dev/null
+++ b/usage/src/main/java/com/ning/billing/usage/glue/CachingDefaultTimelineDaoProvider.java
@@ -0,0 +1,28 @@
+package com.ning.billing.usage.glue;
+
+import javax.inject.Provider;
+
+import org.skife.jdbi.v2.DBI;
+
+import com.ning.billing.usage.timeline.persistent.CachingTimelineDao;
+import com.ning.billing.usage.timeline.persistent.DefaultTimelineDao;
+import com.ning.billing.usage.timeline.persistent.TimelineDao;
+
+import com.google.inject.Inject;
+
+public class CachingDefaultTimelineDaoProvider implements Provider<TimelineDao> {
+
+ private final DBI dbi;
+
+ @Inject
+ public CachingDefaultTimelineDaoProvider(final DBI dbi) {
+ this.dbi = dbi;
+ }
+
+ @Override
+ public TimelineDao get() {
+ final TimelineDao delegate = new DefaultTimelineDao(dbi);
+
+ return new CachingTimelineDao(delegate);
+ }
+}