Android Open Source - Jello Store Module From Project Back to project page Jello .
License The source code is released under:
Apache License
If you think the Android project Jello listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code package com.atteo.jello.store;
/ / f r o m w w w . j a v a 2 s . c o m
import java.util.HashMap;
import android.util.Pool;
import android.util.Pools;
import com.google.inject.Binder;
import com.google.inject.Module;
import com.google.inject.Provides;
import com.google.inject.Singleton;
import com.google.inject.name.Named;
import com.google.inject.name.Names;
public class StoreModule implements Module {
// ---- SETTINGS
private final int pagePoolLimit = 5;
private final String fullpath;
// --------------
private final HashMap<String, String> properties;
public StoreModule(final String fullpath,
final HashMap<String, String> properties) {
this.fullpath = fullpath;
this.properties = getDefaultProperties();
if (properties != null)
this.properties.putAll(properties);
}
public void configure(final Binder binder) {
Names.bindProperties(binder, properties);
binder.bind(Short.class).annotatedWith(Names.named("pageSize" ))
.toProvider(PageSizeProvider.class);
binder.bind(PagedFile.class).to(PagedFileNative.class);
binder.requestStaticInjection(Page.class);
}
private HashMap<String, String> getDefaultProperties() {
final HashMap<String, String> p = new HashMap<String, String>();
p.put("pagePoolLimit" , String.valueOf(pagePoolLimit));
p.put("fullpath" , fullpath);
return p;
}
@Provides
@Singleton
Pool<Page> pagePoolProvider(final PagePoolableManager manager,
@Named("pagePoolLimit" ) final int limit) {
return Pools.finitePool(manager, limit);
}
}
Java Source Code List android.util.FinitePool.java android.util.Pool.java android.util.PoolableManager.java android.util.Poolable.java android.util.Pools.java android.util.SynchronizedPool.java com.atteo.jello.DatabaseFile.java com.atteo.jello.Expression.java com.atteo.jello.JelloModule.java com.atteo.jello.Jello.java com.atteo.jello.PageUsage.java com.atteo.jello.RecordPoolableManager.java com.atteo.jello.Record.java com.atteo.jello.StorableCollection.java com.atteo.jello.StorableFactory.java com.atteo.jello.StorableInfo.java com.atteo.jello.Storable.java com.atteo.jello.associations.BelongsTo.java com.atteo.jello.associations.DatabaseField.java com.atteo.jello.associations.HasMany.java com.atteo.jello.index.BTree.java com.atteo.jello.index.IndexFactory.java com.atteo.jello.index.IndexModule.java com.atteo.jello.index.Index.java com.atteo.jello.index.PagePoolProxy.java com.atteo.jello.klass.KlassManager.java com.atteo.jello.klass.SimpleKlassManager.java com.atteo.jello.schema.SchemaManagerFactory.java com.atteo.jello.schema.SchemaManager.java com.atteo.jello.schema.SchemaModule.java com.atteo.jello.schema.Schema.java com.atteo.jello.schema.SimpleSchemaManager.java com.atteo.jello.schema.StorableWriter.java com.atteo.jello.schema.VanillaStorableWriter.java com.atteo.jello.space.AppendOnlyCacheNative.java com.atteo.jello.space.AppendOnlyCache.java com.atteo.jello.space.AppendOnly.java com.atteo.jello.space.Hybrid.java com.atteo.jello.space.NextFitHistogramNative.java com.atteo.jello.space.NextFitHistogram.java com.atteo.jello.space.NextFit.java com.atteo.jello.space.SpaceManagerNative.java com.atteo.jello.space.SpaceManagerPolicy.java com.atteo.jello.space.SpaceManager.java com.atteo.jello.space.SpaceModule.java com.atteo.jello.space.VanillaHistogram.java com.atteo.jello.store.HeaderPage.java com.atteo.jello.store.ListPage.java com.atteo.jello.store.PagePoolableManager.java com.atteo.jello.store.PageSizeProvider.java com.atteo.jello.store.Page.java com.atteo.jello.store.PagedFileNative.java com.atteo.jello.store.PagedFileRAF.java com.atteo.jello.store.PagedFile.java com.atteo.jello.store.StoreModule.java com.atteo.jello.transaction.LockManager.java com.atteo.jello.transaction.SimpleLockManager.java com.atteo.jello.transaction.SimpleTransactionManager.java com.atteo.jello.transaction.TransactionManager.java com.atteo.jello.transaction.TransactionModule.java