All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.intelie.liverig.plugin.Main Maven / Gradle / Ivy

The newest version!
package net.intelie.liverig.plugin;

import net.intelie.live.EntityContext;
import net.intelie.live.Live;
import net.intelie.live.LivePlugin;
import net.intelie.live.SettingsNode;
import net.intelie.live.util.PluginUtils;
import net.intelie.liverig.plugin.curves.CalculatedCurves;
import net.intelie.liverig.plugin.curves.NormalizerConfigFieldService;
import net.intelie.liverig.plugin.curves.StandardCurves;
import net.intelie.liverig.plugin.widgets.DisplayUnitPipesFunctions;
import net.intelie.liverig.plugin.widgets.DisplayUnitResource;
import net.intelie.liverig.plugin.widgets.DisplayUnitsService;
import net.intelie.liverig.plugin.normalizer.NormalizerConfigFowardingExpression;
import net.intelie.liverig.plugin.normalizer.NormalizerConfigFunctions;

public class Main implements LivePlugin {

    @Override
    public void start(Live live) throws Exception {

        EntityContext context = live.data().getContext();
        SettingsNode home = live.settings().home();
        DisplayUnitsService displayUnitsService = new DisplayUnitsService(home, context);
        DisplayUnitResource displayUnitResource = new DisplayUnitResource(displayUnitsService);
        NormalizerConfigFieldService normalizerConfigFieldService = new NormalizerConfigFieldService(live.settings());
        live.pipes().addInstanceModule(new NormalizerConfigFunctions(normalizerConfigFieldService));
        live.pipes().addConstructor(NormalizerConfigFowardingExpression.class);


        live.web().addService("/display-units", displayUnitResource);
        live.exportPackage("net.intelie.liverig.plugin.widgets");

        live.system().registerPluginService(DisplayUnitsService.class, displayUnitsService);
        live.system().registerPluginService(NormalizerConfigFieldService.class, normalizerConfigFieldService);

        StandardCurves standardCurves = live.system().getPluginService(StandardCurves.class);
        CalculatedCurves calculatedCurves = live.system().getPluginService(CalculatedCurves.class);

        live.pipes().addInstanceModule(new DisplayUnitPipesFunctions(displayUnitsService, standardCurves, calculatedCurves));

        PluginUtils.defaultWebSetup(live);

    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy