Как запустить комплект OSGI из другого класса - PullRequest
0 голосов
/ 03 апреля 2020

Я новичок в OSGI. Я хочу создать простое приложение-плагин. Я хочу запустить пакет в OSGI Equinox из другого класса.

Я добавил плагины в зависимости, теперь мне нужно запустить соответствующий пакет в условие if

public void startAdminMenu() {
        System.out.println("Welcome to Pizza Hut Admin Menu");
        System.out.println("Choose Service that you need");
        System.out.println("01. Add Food");
        System.out.println("02. Add Delivery Person");

        Scanner myObj = new Scanner(System.in);

        System.out.print("Enter Option Number: ");
        String number = myObj.nextLine();

        if(number.equals("01") || number.equals(("1"))) {
        }
        else if(number.equals("02") || number.equals(("2"))){
        }
    }

Это один из комплектов, который мне нужно добавить


public class Activator implements BundleActivator {

    ServiceReference serviceReference;

    public void start(BundleContext bundleContext) throws Exception {
        serviceReference = bundleContext.getServiceReference(PizzaHutPublisher.class.getName());
        PizzaHutPublisherImpl pizzaHutPublisher = (PizzaHutPublisherImpl)bundleContext.getService(serviceReference);
        AddFood addNewPizza = new AddFood(pizzaHutPublisher.getPizzaList());
        pizzaHutPublisher.setPizzaList((addNewPizza.addPizza()));
    }

    public void stop(BundleContext bundleContext) throws Exception {
        bundleContext.ungetService(serviceReference);
    }

}
...