Interface Installable

All Known Implementing Classes:
AbstractCachingDictionary, DatabaseBackedDictionary, Dictionary, FileBackedDictionary, MapBackedDictionary

public interface Installable
An Installable is an object that defines a framework for allowing subclasses to define an instance of themselves as the single static instance of the superclass. It is required that subclasses implement the install() method which creates an instance of the class from property file parameters (Params) and installs it.

For example:

 public abstract class Super implements Installable {
      private static Super INSTANCE;
                private String str;

                protected void setInstance(Super instance) {
                        INSTANCE = instance;
                }

                public Super getInstance() {
                        return INSTANCE;
                }

                protected Super() {
                }

                protected Super(String str) {
                        this.str = str;
                }

                // other methods go here
 }

 public class Sub extends Super {
                public Sub() {
                }

                protected Sub(String s) {
        super(s);
                }

                public void install(Map params) {
                        Param p = params.get("string");
                        Sub sub = new Sub(p.getValue());
                        setInstance(sub);
                }

                // other methods go here
 }

 public static void main(String[] args) {
                Map params = getParams();
                Sub.class.newInstance().install(params);
 }
 
A class that implements this interface must also define a no-arg constructor.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    install(Map params)