diff --git a/plugin-api/pom.xml b/plugin-api/pom.xml
index 516198e..5324385 100644
--- a/plugin-api/pom.xml
+++ b/plugin-api/pom.xml
@@ -15,4 +15,13 @@
Firefly Framework - Plugin API
Core API and interfaces for the Firefly plugin system
+
+
+
+
+ org.fireflyframework
+ fireflyframework-kernel
+ ${project.version}
+
+
diff --git a/plugin-api/src/main/java/org/fireflyframework/plugin/api/PluginException.java b/plugin-api/src/main/java/org/fireflyframework/plugin/api/PluginException.java
index 3ac468c..7c043bb 100644
--- a/plugin-api/src/main/java/org/fireflyframework/plugin/api/PluginException.java
+++ b/plugin-api/src/main/java/org/fireflyframework/plugin/api/PluginException.java
@@ -16,10 +16,12 @@
package org.fireflyframework.plugin.api;
+import org.fireflyframework.kernel.exception.FireflyException;
+
/**
* Base exception for plugin-related errors.
*/
-public class PluginException extends Exception {
+public class PluginException extends FireflyException {
public PluginException(String message) {
super(message);
diff --git a/plugin-core/src/main/java/org/fireflyframework/plugin/core/DefaultExtensionRegistry.java b/plugin-core/src/main/java/org/fireflyframework/plugin/core/DefaultExtensionRegistry.java
index a196ea0..37143ff 100644
--- a/plugin-core/src/main/java/org/fireflyframework/plugin/core/DefaultExtensionRegistry.java
+++ b/plugin-core/src/main/java/org/fireflyframework/plugin/core/DefaultExtensionRegistry.java
@@ -30,7 +30,7 @@
*/
public class DefaultExtensionRegistry implements ExtensionRegistry {
- private static final Logger logger = LoggerFactory.getLogger(DefaultExtensionRegistry.class);
+ private static final Logger log = LoggerFactory.getLogger(DefaultExtensionRegistry.class);
private final Map> extensionPoints = new ConcurrentHashMap<>();
private final Map>> extensions = new ConcurrentHashMap<>();
@@ -40,7 +40,7 @@ public void registerExtensionPoint(String extensionPointId, Class extensi
Objects.requireNonNull(extensionPointId, "Extension point ID cannot be null");
Objects.requireNonNull(extensionPointClass, "Extension point class cannot be null");
- logger.info("Registering extension point: {} -> {}", extensionPointId, extensionPointClass.getName());
+ log.info("Registering extension point: {} -> {}", extensionPointId, extensionPointClass.getName());
extensionPoints.put(extensionPointId, extensionPointClass);
extensions.putIfAbsent(extensionPointId, new CopyOnWriteArrayList<>());
}
@@ -62,7 +62,7 @@ public void registerExtension(String extensionPointId, T extension, int prio
);
}
- logger.info("Registering extension {} for extension point {} with priority {}",
+ log.info("Registering extension {} for extension point {} with priority {}",
extension.getClass().getSimpleName(), extensionPointId, priority);
List> extensionList = extensions.computeIfAbsent(
@@ -82,7 +82,7 @@ public void unregisterExtension(String extensionPointId, T extension) {
Objects.requireNonNull(extensionPointId, "Extension point ID cannot be null");
Objects.requireNonNull(extension, "Extension cannot be null");
- logger.info("Unregistering extension {} from extension point {}",
+ log.info("Unregistering extension {} from extension point {}",
extension.getClass().getSimpleName(), extensionPointId);
List> extensionList = extensions.get(extensionPointId);
diff --git a/plugin-core/src/main/java/org/fireflyframework/plugin/core/DefaultPluginManager.java b/plugin-core/src/main/java/org/fireflyframework/plugin/core/DefaultPluginManager.java
index b78dd12..da4e4d8 100644
--- a/plugin-core/src/main/java/org/fireflyframework/plugin/core/DefaultPluginManager.java
+++ b/plugin-core/src/main/java/org/fireflyframework/plugin/core/DefaultPluginManager.java
@@ -35,7 +35,7 @@
*/
public class DefaultPluginManager implements PluginManager {
- private static final Logger logger = LoggerFactory.getLogger(DefaultPluginManager.class);
+ private static final Logger log = LoggerFactory.getLogger(DefaultPluginManager.class);
private final Map plugins = new ConcurrentHashMap<>();
private final Map descriptors = new ConcurrentHashMap<>();
@@ -57,11 +57,11 @@ public DefaultPluginManager(ExtensionRegistry extensionRegistry) {
@Override
public synchronized void initialize() throws PluginException {
if (initialized) {
- logger.warn("Plugin manager already initialized");
+ log.warn("Plugin manager already initialized");
return;
}
- logger.info("Initializing plugin manager");
+ log.info("Initializing plugin manager");
initialized = true;
}
@@ -83,7 +83,7 @@ public PluginDescriptor loadPlugin(Class extends Plugin> pluginClass) throws P
throw new PluginException("Plugin already loaded: " + pluginId);
}
- logger.info("Loading plugin: {} ({})", metadata.name(), pluginId);
+ log.info("Loading plugin: {} ({})", metadata.name(), pluginId);
// Create descriptor
PluginDescriptor descriptor = PluginDescriptor.builder()
@@ -100,7 +100,7 @@ public PluginDescriptor loadPlugin(Class extends Plugin> pluginClass) throws P
plugin.initialize();
descriptor = descriptor.withState(PluginState.INITIALIZED);
descriptors.put(pluginId, descriptor);
- logger.info("Plugin initialized: {}", pluginId);
+ log.info("Plugin initialized: {}", pluginId);
} catch (Exception e) {
descriptor = descriptor.withState(PluginState.FAILED);
descriptors.put(pluginId, descriptor);
@@ -130,7 +130,7 @@ public void startPlugin(String pluginId) throws PluginException {
PluginDescriptor descriptor = descriptors.get(pluginId);
if (descriptor.state() == PluginState.STARTED) {
- logger.warn("Plugin already started: {}", pluginId);
+ log.warn("Plugin already started: {}", pluginId);
return;
}
@@ -150,13 +150,13 @@ public void startPlugin(String pluginId) throws PluginException {
throw new PluginException("Failed to resolve dependencies for plugin: " + pluginId, e);
}
- logger.info("Starting plugin: {}", pluginId);
+ log.info("Starting plugin: {}", pluginId);
try {
plugin.start();
descriptor = descriptor.withState(PluginState.STARTED);
descriptors.put(pluginId, descriptor);
- logger.info("Plugin started: {}", pluginId);
+ log.info("Plugin started: {}", pluginId);
} catch (Exception e) {
descriptor = descriptor.withState(PluginState.FAILED);
descriptors.put(pluginId, descriptor);
@@ -175,17 +175,17 @@ public void stopPlugin(String pluginId) throws PluginException {
PluginDescriptor descriptor = descriptors.get(pluginId);
if (descriptor.state() != PluginState.STARTED) {
- logger.warn("Plugin not started: {}", pluginId);
+ log.warn("Plugin not started: {}", pluginId);
return;
}
- logger.info("Stopping plugin: {}", pluginId);
+ log.info("Stopping plugin: {}", pluginId);
try {
plugin.stop();
descriptor = descriptor.withState(PluginState.STOPPED);
descriptors.put(pluginId, descriptor);
- logger.info("Plugin stopped: {}", pluginId);
+ log.info("Plugin stopped: {}", pluginId);
} catch (Exception e) {
descriptor = descriptor.withState(PluginState.FAILED);
descriptors.put(pluginId, descriptor);
@@ -209,7 +209,7 @@ public void unloadPlugin(String pluginId) throws PluginException {
stopPlugin(pluginId);
}
- logger.info("Unloading plugin: {}", pluginId);
+ log.info("Unloading plugin: {}", pluginId);
try {
// Unregister extensions
@@ -222,7 +222,7 @@ public void unloadPlugin(String pluginId) throws PluginException {
plugins.remove(pluginId);
descriptors.remove(pluginId);
- logger.info("Plugin unloaded: {}", pluginId);
+ log.info("Plugin unloaded: {}", pluginId);
} catch (Exception e) {
throw new PluginException("Failed to unload plugin: " + pluginId, e);
}
@@ -254,7 +254,7 @@ public synchronized void shutdown() throws PluginException {
return;
}
- logger.info("Shutting down plugin manager");
+ log.info("Shutting down plugin manager");
// Stop and unload all plugins
List pluginIds = new ArrayList<>(plugins.keySet());
@@ -262,7 +262,7 @@ public synchronized void shutdown() throws PluginException {
try {
unloadPlugin(pluginId);
} catch (Exception e) {
- logger.error("Error unloading plugin during shutdown: {}", pluginId, e);
+ log.error("Error unloading plugin during shutdown: {}", pluginId, e);
}
}
@@ -285,10 +285,10 @@ private void registerPluginExtensions(Plugin plugin, Class> pluginClass) {
extension,
annotation.priority()
);
- logger.debug("Registered extension {} for plugin {}",
+ log.debug("Registered extension {} for plugin {}",
innerClass.getSimpleName(), plugin.getMetadata().id());
} catch (Exception e) {
- logger.error("Failed to register extension: {}", innerClass.getName(), e);
+ log.error("Failed to register extension: {}", innerClass.getName(), e);
}
}
}
@@ -308,10 +308,10 @@ private void unregisterPluginExtensions(Plugin plugin, Class> pluginClass) {
annotation.extensionPointId(),
extension
);
- logger.debug("Unregistered extension {} for plugin {}",
+ log.debug("Unregistered extension {} for plugin {}",
innerClass.getSimpleName(), plugin.getMetadata().id());
} catch (Exception e) {
- logger.error("Failed to unregister extension: {}", innerClass.getName(), e);
+ log.error("Failed to unregister extension: {}", innerClass.getName(), e);
}
}
}