|
|
@ -18,33 +18,33 @@ package org.pf4j; |
|
|
|
/** |
|
|
|
/** |
|
|
|
* @author Decebal Suiu |
|
|
|
* @author Decebal Suiu |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
public class PluginState { |
|
|
|
public enum PluginState { |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* The runtime knows the plugin is there. It knows about the plugin path, the plugin descriptor. |
|
|
|
* The runtime knows the plugin is there. It knows about the plugin path, the plugin descriptor. |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
public static final PluginState CREATED = new PluginState("CREATED"); |
|
|
|
CREATED("CREATED"), |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* The plugin cannot be used. |
|
|
|
* The plugin cannot be used. |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
public static final PluginState DISABLED = new PluginState("DISABLED"); |
|
|
|
DISABLED("DISABLED"), |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* The plugin is created. All the dependencies are created and resolved. |
|
|
|
* The plugin is created. All the dependencies are created and resolved. |
|
|
|
* The plugin is ready to be started. |
|
|
|
* The plugin is ready to be started. |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
public static final PluginState RESOLVED = new PluginState("RESOLVED"); |
|
|
|
RESOLVED("RESOLVED"), |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* The {@link Plugin#start()} has executed. A started plugin may contribute extensions. |
|
|
|
* The {@link Plugin#start()} has executed. A started plugin may contribute extensions. |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
public static final PluginState STARTED = new PluginState("STARTED"); |
|
|
|
STARTED("STARTED"), |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* The {@link Plugin#stop()} has executed. |
|
|
|
* The {@link Plugin#stop()} has executed. |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
public static final PluginState STOPPED = new PluginState("STOPPED"); |
|
|
|
STOPPED("STOPPED"); |
|
|
|
|
|
|
|
|
|
|
|
private String status; |
|
|
|
private String status; |
|
|
|
|
|
|
|
|
|
|
@ -52,24 +52,22 @@ public class PluginState { |
|
|
|
this.status = status; |
|
|
|
this.status = status; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
public boolean equals(String status) { |
|
|
|
public boolean equals(Object o) { |
|
|
|
return (status == null ? false : this.status.equalsIgnoreCase(status)); |
|
|
|
if (this == o) return true; |
|
|
|
|
|
|
|
if (o == null || getClass() != o.getClass()) return false; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
PluginState that = (PluginState) o; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return status.equals(that.status); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public int hashCode() { |
|
|
|
public String toString() { |
|
|
|
return status.hashCode(); |
|
|
|
return status; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
public static PluginState parse(String string) { |
|
|
|
public String toString() { |
|
|
|
for (PluginState status : values()) { |
|
|
|
|
|
|
|
if (status.equals(string)) { |
|
|
|
return status; |
|
|
|
return status; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return null; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|