1. @Component:
@Component(name = "exampleComponent", version = "1.0.0")
public class ExampleComponent {
// Class implementation
}
2. @Service:
@Service(interfaceClass = ExampleService.class, properties = { "service.property=test" })
public class ExampleServiceImpl implements ExampleService {
// Class implementation
}
3. @Reference:
@Component
public class DependentComponent {
@Reference
private ExampleService exampleService;
// Class implementation
}
@Component
public class ExampleComponent {
@Activate
public void activate(ComponentContext context) {
// Component activation logic
}
@Deactivate
public void deactivate(ComponentContext context) {
// Component deactivation logic
}
// Other methods
}
component.name=exampleComponent
component.version=1.0.0