package org.o7planning.tutorial.helloosgi.mathconsumer;import org.osgi.framework.BundleActivator;import org.osgi.framework.BundleContext;public class Activator implements BundleActivator private static BundleContext context; static BundleContext getContext() return context; public void start(BundleContext bundleContext) throws Exception Activator.context = bundleContext; System.out.println("MathConsumer Starting..."); System.out.println("MathConsumer Started"); public void stop(BundleContext bundleContext) throws Exception Activator.context = null; System.out.println("MathConsumer Stopped"); MathConsumer là 1 OSGi nó cũng khá được Gọi là 1 trong những Bundle. Bây giờ đồng hồ chúng ta đã knhị báo MathConsumer sử dụng một trong những Bundle khác mục tiêu nhằm rất có thể chạy MathConsumer về sau.Quý khách hàng sẽ xem: Osgi là gì

org.eclipse.osgiorg.eclipse.equinox.consoleorg.apabít.felix.gogo.commandorg.apabịt.felix.gogo.runtimeorg.apabít.felix.gogo.shell

Bạn đang xem: Osgi là gì

*

*

*

Xem thêm:

*

*

Như hình minch họa bọn họ thấy ID của OSGi MathConsumer là 2, áp dụng lệnh "stop" để dừng Bundle này.package org.o7planning.tutorial.helloosgi.mathservice;public interface MathService public int sum(int a, int b); package org.o7planning.tutorial.helloosgi.mathservice.impl;import org.o7planning.tutorial.helloosgi.mathservice.MathService;public class MathServiceImpl implements MathService { package org.o7planning.tutorial.helloosgi.utils;public class MathUtils public static int minus(int a, int b) return a- b; Đăng ký hình thức dịch vụ MathService nhằm những OSGi khác rất có thể sử dụng. Việc này được thực hiện trong Activator của OSGi MathService.package org.o7planning.tutorial.helloosgi;import org.o7planning.tutorial.helloosgi.mathservice.MathService;import org.o7planning.tutorial.helloosgi.mathservice.impl.MathServiceImpl;import org.osgi.framework.BundleActivator;import org.osgi.framework.BundleContext;public class Activator implements BundleActivator private static BundleContext context; static BundleContext getContext() return context; public void start(BundleContext bundleContext) throws Exception Activator.context = bundleContext; System.out.println("Registry Service MathService..."); this.registryMathService(); System.out.println("OSGi MathService Started"); private void registryMathService() MathService service = new MathServiceImpl(); context.registerService(MathService.class, service, null); public void stop(BundleContext bundleContext) throws Exception Activator.context = null; System.out.println("OSGi MathService Stopped!"); Cấu hình nhằm xuất khẩu (export) 2 packages org.o7planning.tutorial.helloosgi.utils với org.o7planning.tutorial.helloosgi.mathservice.OSGi y hệt như một chiếc vỏ hộp đóng, các OSGi khác chỉ rất có thể thực hiện các class/interface của OSGi này ví như nó ở trong số package được xuất khẩu ra phía bên ngoài.OSGi MathConsumer chỉ có thể sử dụng những class/interface ở trong các package mà lại MathService xuất khẩu.
Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *