17.5.5. Archive Plugins

You can collect more plugins in one archive. This makes it possible to register them with only one plugin directive. To create an archive you implement a class of the IArchive interface:

public interface IArchive extends IPlugin {
   public List<IPlugin> getPluginObjects();
}

An implementation could look like this:

public class MyArchive implements IArchive{
   @Override
   public List<Object> getPluginObjects() {
      List<Object> list = new ArrayList<Object>();
      list.add(new MyMacro());
      list.add(new MyModifyer());
      return list;
   }
}

The following plugin directive will then register both MyMacro and MyModifyer.

.plugin "test.plugins.archives.MyArchive"