Android Open Source - Jello Space 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.space;
//from w w w.j a  va  2  s.  c o m
import java.util.HashMap;

import com.atteo.jello.store.PageSizeProvider;
import com.google.inject.Binder;
import com.google.inject.Module;
import com.google.inject.name.Names;

public class SpaceModule implements Module {
  // ---- SETTINGS

  private final int histogramClasses = 8;

  private final short blockSize = 64;
  private final short blocksPerPage;
  private final short freeSpaceInfoSize;
  private final short freeSpaceInfosPerPage;
  private final short freeSpaceInfoPageCapacity;

  // --------------

  private final short pageSize;

  private final HashMap<String, String> properties;

  public SpaceModule(final HashMap<String, String> properties) {
    pageSize = new PageSizeProvider().get();

    blocksPerPage = (short) (pageSize / blockSize);
    freeSpaceInfoSize = (short) (blocksPerPage / (short) Byte.SIZE);
    freeSpaceInfoPageCapacity = (short) (pageSize - 4);
    freeSpaceInfosPerPage = (short) (freeSpaceInfoPageCapacity / freeSpaceInfoSize);

    this.properties = getDefaultProperties();
    if (properties != null)
      this.properties.putAll(properties);

  }

  public void configure(final Binder binder) {
    Names.bindProperties(binder, properties);

    binder.bind(SpaceManagerPolicy.class).to(Hybrid.class);
  }

  private HashMap<String, String> getDefaultProperties() {
    final HashMap<String, String> p = new HashMap<String, String>();
    p.put("nextFitHistogramClasses", String.valueOf(histogramClasses));
    p.put("blockSize", String.valueOf(blockSize));
    p.put("blockPerPage", String.valueOf(blocksPerPage));
    p.put("freeSpaceInfoSize", String.valueOf(freeSpaceInfoSize));
    p.put("freeSpaceInfoPageCapacity", String
        .valueOf(freeSpaceInfoPageCapacity));
    p.put("freeSpaceInfosPerPage", String.valueOf(freeSpaceInfosPerPage));

    return p;
  }
}




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