Some bugfixes
parent
bd0ccd0ae6
commit
c363b8cd43
|
|
@ -254,16 +254,12 @@ final class EntityImExporterTreeManager {
|
||||||
|
|
||||||
//Check if the nodes list has an entry for the required module.
|
//Check if the nodes list has an entry for the required module.
|
||||||
if (!nodes.containsKey(requiredClass.getName())) {
|
if (!nodes.containsKey(requiredClass.getName())) {
|
||||||
|
|
||||||
LOGGER.fatal("Required EntityImExporter for \"{}\" no found.",
|
LOGGER.fatal("Required EntityImExporter for \"{}\" no found.",
|
||||||
requiredClass.getName());
|
requiredClass.getName());
|
||||||
throw new DependencyException(String.format(
|
throw new DependencyException(String.format(
|
||||||
"EntityImExporter for type \"%s\" depends on type \"%s\" "
|
"EntityImExporter for type \"%s\" depends on type \"%s\" "
|
||||||
+ "but no EntityImExporter for type \"%s\" is available.",
|
+ "but no EntityImExporter for type \"%s\" is available.",
|
||||||
node
|
node.getEntityImExporter().getEntityClass(),
|
||||||
.getEntityImExporter()
|
|
||||||
.getClass()
|
|
||||||
.getAnnotation(Processes.class).value().getName(),
|
|
||||||
requiredClass.getName(),
|
requiredClass.getName(),
|
||||||
requiredClass.getName()));
|
requiredClass.getName()));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -22,92 +22,94 @@ import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A node in the dependency tree managed by {@link EntityImExporterTreeManager}.
|
* A node in the dependency tree managed by {@link EntityImExporterTreeManager}.
|
||||||
*
|
*
|
||||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||||
*/
|
*/
|
||||||
final class EntityImExporterTreeNode {
|
final class EntityImExporterTreeNode {
|
||||||
|
|
||||||
private AbstractEntityImExporter<?> entityImExporter;
|
private AbstractEntityImExporter<?> entityImExporter;
|
||||||
|
|
||||||
private List<EntityImExporterTreeNode> dependentImExporters;
|
private List<EntityImExporterTreeNode> dependentImExporters;
|
||||||
|
|
||||||
private List<EntityImExporterTreeNode> dependsOn;
|
private List<EntityImExporterTreeNode> dependsOn;
|
||||||
|
|
||||||
public EntityImExporterTreeNode() {
|
public EntityImExporterTreeNode() {
|
||||||
|
|
||||||
super();
|
super();
|
||||||
|
|
||||||
dependentImExporters = new ArrayList<>();
|
dependentImExporters = new ArrayList<>();
|
||||||
dependsOn = new ArrayList<>();
|
dependsOn = new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public EntityImExporterTreeNode(
|
public EntityImExporterTreeNode(
|
||||||
final AbstractEntityImExporter<?> entityImExporter) {
|
final AbstractEntityImExporter<?> entityImExporter) {
|
||||||
|
|
||||||
this();
|
this();
|
||||||
this.entityImExporter = entityImExporter;
|
this.entityImExporter = entityImExporter;
|
||||||
}
|
}
|
||||||
|
|
||||||
public AbstractEntityImExporter<?> getEntityImExporter() {
|
public AbstractEntityImExporter<?> getEntityImExporter() {
|
||||||
|
|
||||||
return entityImExporter;
|
return entityImExporter;
|
||||||
}
|
}
|
||||||
|
|
||||||
void setEntityImExporter(
|
void setEntityImExporter(
|
||||||
final AbstractEntityImExporter<?> entityImExporter) {
|
final AbstractEntityImExporter<?> entityImExporter) {
|
||||||
|
|
||||||
this.entityImExporter = entityImExporter;
|
this.entityImExporter = entityImExporter;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<EntityImExporterTreeNode> getDependentImExporters() {
|
public List<EntityImExporterTreeNode> getDependentImExporters() {
|
||||||
return Collections.unmodifiableList(dependentImExporters);
|
return Collections.unmodifiableList(dependentImExporters);
|
||||||
}
|
}
|
||||||
|
|
||||||
void setDependentImExporters(
|
void setDependentImExporters(
|
||||||
final List<EntityImExporterTreeNode> dependentImExporters) {
|
final List<EntityImExporterTreeNode> dependentImExporters) {
|
||||||
|
|
||||||
this.dependentImExporters = new ArrayList<>(dependentImExporters);
|
this.dependentImExporters = new ArrayList<>(dependentImExporters);
|
||||||
}
|
}
|
||||||
|
|
||||||
void addDependentImExporter(final EntityImExporterTreeNode node) {
|
void addDependentImExporter(final EntityImExporterTreeNode node) {
|
||||||
|
|
||||||
dependentImExporters.add(node);
|
dependentImExporters.add(node);
|
||||||
}
|
}
|
||||||
|
|
||||||
void removeDependentImExporter(final EntityImExporterTreeNode node) {
|
void removeDependentImExporter(final EntityImExporterTreeNode node) {
|
||||||
|
|
||||||
dependentImExporters.remove(node);
|
dependentImExporters.remove(node);
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<EntityImExporterTreeNode> getDependsOn() {
|
public List<EntityImExporterTreeNode> getDependsOn() {
|
||||||
|
|
||||||
return Collections.unmodifiableList(dependsOn);
|
return Collections.unmodifiableList(dependsOn);
|
||||||
}
|
}
|
||||||
|
|
||||||
void setDependsOn(final List<EntityImExporterTreeNode> dependsOn) {
|
void setDependsOn(final List<EntityImExporterTreeNode> dependsOn) {
|
||||||
|
|
||||||
this.dependsOn = new ArrayList<>(dependsOn);
|
this.dependsOn = new ArrayList<>(dependsOn);
|
||||||
}
|
}
|
||||||
|
|
||||||
void addDependsOn(final EntityImExporterTreeNode node) {
|
void addDependsOn(final EntityImExporterTreeNode node) {
|
||||||
|
|
||||||
dependsOn.add(node);
|
dependsOn.add(node);
|
||||||
}
|
}
|
||||||
|
|
||||||
void removeDependsOn(final EntityImExporterTreeNode node) {
|
void removeDependsOn(final EntityImExporterTreeNode node) {
|
||||||
|
|
||||||
dependsOn.remove(node);
|
dependsOn.remove(node);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
int hash = 7;
|
int hash = 7;
|
||||||
hash = 47
|
hash = 47
|
||||||
* hash
|
* hash
|
||||||
+ Objects.hashCode(this.entityImExporter.getClass().getName());
|
+ Objects
|
||||||
|
.hashCode(this.entityImExporter.getClass().getName());
|
||||||
return hash;
|
return hash;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -127,7 +129,30 @@ final class EntityImExporterTreeNode {
|
||||||
this.entityImExporter.getClass().getName(),
|
this.entityImExporter.getClass().getName(),
|
||||||
other.getEntityImExporter().getClass().getName());
|
other.getEntityImExporter().getClass().getName());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return String.format(
|
||||||
|
"%s{ "
|
||||||
|
+ "entityImExporter: %s, "
|
||||||
|
+ "dependentImExporters: [%s], "
|
||||||
|
+ "dependsOn: [%s]"
|
||||||
|
+ " }",
|
||||||
|
super.toString(),
|
||||||
|
entityImExporter.getEntityClass().toString(),
|
||||||
|
dependentImExporters
|
||||||
|
.stream()
|
||||||
|
.map(EntityImExporterTreeNode::getEntityImExporter)
|
||||||
|
.map(AbstractEntityImExporter::getEntityClass)
|
||||||
|
.map(Class::getName)
|
||||||
|
.collect(Collectors.joining(", ")),
|
||||||
|
dependsOn
|
||||||
|
.stream()
|
||||||
|
.map(EntityImExporterTreeNode::getEntityImExporter)
|
||||||
|
.map(AbstractEntityImExporter::getEntityClass)
|
||||||
|
.map(Class::getName)
|
||||||
|
.collect(Collectors.joining(", "))
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue