From a72945501d9d38a007bc787961690e655ffdfae1 Mon Sep 17 00:00:00 2001 From: Jens Pelzetter Date: Sat, 24 Sep 2022 11:26:17 +0200 Subject: [PATCH] Code cleanup --- .../AbstractContentItemImExporter.java | 1 - .../CategorizationImExporter.java | 17 ++- .../imexport/AbstractEntityImExporter.java | 15 +- .../imexport/EntityImExporterTreeManager.java | 144 ++++++++++-------- .../imexport/EntityImExporterTreeNode.java | 19 +-- .../libreccm/imexport/ImportExpection.java | 33 ++-- .../org/libreccm/imexport/ImportExport.java | 1 - .../org/libreccm/security/RoleImExporter.java | 6 +- .../security/RoleMembershipImExporter.java | 3 +- .../workflow/TaskAssignmentImExporter.java | 1 - .../workflow/TaskDependencyImExporter.java | 3 +- 11 files changed, 135 insertions(+), 108 deletions(-) diff --git a/ccm-cms/src/main/java/org/librecms/contentsection/AbstractContentItemImExporter.java b/ccm-cms/src/main/java/org/librecms/contentsection/AbstractContentItemImExporter.java index 5a014d6a0..d49aefaad 100644 --- a/ccm-cms/src/main/java/org/librecms/contentsection/AbstractContentItemImExporter.java +++ b/ccm-cms/src/main/java/org/librecms/contentsection/AbstractContentItemImExporter.java @@ -42,7 +42,6 @@ public abstract class AbstractContentItemImExporter @Override protected Set> getRequiredEntities() { - final Set> entities = new HashSet<>(); entities.add(Category.class); entities.add(ContentSection.class); diff --git a/ccm-core/src/main/java/org/libreccm/categorization/CategorizationImExporter.java b/ccm-core/src/main/java/org/libreccm/categorization/CategorizationImExporter.java index aa7e64555..9e4ef7d91 100644 --- a/ccm-core/src/main/java/org/libreccm/categorization/CategorizationImExporter.java +++ b/ccm-core/src/main/java/org/libreccm/categorization/CategorizationImExporter.java @@ -76,13 +76,16 @@ public class CategorizationImExporter @Override protected Categorization reloadEntity(final Categorization entity) { try { - return entityManager.createNamedQuery( - "Categorization.findById", - Categorization.class - ).setParameter( - "categorizationId", - Objects.requireNonNull(entity).getCategorizationId() - ).getSingleResult(); + return entityManager + .createNamedQuery( + "Categorization.findById", + Categorization.class + ) + .setParameter( + "categorizationId", + Objects.requireNonNull(entity).getCategorizationId() + ) + .getSingleResult(); } catch (NoResultException ex) { throw new IllegalArgumentException( String.format( diff --git a/ccm-core/src/main/java/org/libreccm/imexport/AbstractEntityImExporter.java b/ccm-core/src/main/java/org/libreccm/imexport/AbstractEntityImExporter.java index 02ea6ca81..9e3c14df3 100644 --- a/ccm-core/src/main/java/org/libreccm/imexport/AbstractEntityImExporter.java +++ b/ccm-core/src/main/java/org/libreccm/imexport/AbstractEntityImExporter.java @@ -99,17 +99,20 @@ public abstract class AbstractEntityImExporter { try { return objectMapper.writeValueAsString(export); } catch (JsonProcessingException ex) { - throw new ExportException(String.format( - "Failed to export entity \"%s\" of type \"%s\".", - entity.getUuid(), - getEntityClass().getName()), - ex); + throw new ExportException( + String.format( + "Failed to export entity \"%s\" of type \"%s\".", + entity.getUuid(), + getEntityClass().getName() + ), + ex + ); } } /** * Reloads the entity to export. Entities become detacted for several - * reasons before they are passed to the null {@link #exportEntity(org.libreccm.imexport.Exportable) method. The + * reasons before they are passed to the null null {@link #exportEntity(org.libreccm.imexport.Exportable) method. The * implementation of this should reload the passed entity. * * @param entity The entity to reload. diff --git a/ccm-core/src/main/java/org/libreccm/imexport/EntityImExporterTreeManager.java b/ccm-core/src/main/java/org/libreccm/imexport/EntityImExporterTreeManager.java index d5925e6d0..87085fbc7 100644 --- a/ccm-core/src/main/java/org/libreccm/imexport/EntityImExporterTreeManager.java +++ b/ccm-core/src/main/java/org/libreccm/imexport/EntityImExporterTreeManager.java @@ -46,8 +46,9 @@ import java.util.stream.Collectors; */ final class EntityImExporterTreeManager { - private static final Logger LOGGER = LogManager - .getLogger(EntityImExporterTreeManager.class); + private static final Logger LOGGER = LogManager.getLogger( + EntityImExporterTreeManager.class + ); /** * Initialises the tree with the provided list of @@ -63,9 +64,8 @@ final class EntityImExporterTreeManager { * cycle is detected in the dependency tree. */ public List generateTree( - final List> imExporters) - throws DependencyException { - + final List> imExporters + ) throws DependencyException { LOGGER.info("Starting to generate dependency tree..."); //Create the tree nodes. A HashMap is used to avoid duplicates and @@ -73,12 +73,15 @@ final class EntityImExporterTreeManager { final Map nodes = imExporters .stream() .map(EntityImExporterTreeNode::new) - .collect(Collectors.toMap( - node -> node - .getEntityImExporter() - .getEntityClass() - .getName(), - node -> node)); + .collect( + Collectors.toMap( + node -> node + .getEntityImExporter() + .getEntityClass() + .getName(), + node -> node + ) + ); //Add the dependency relations to the nodes for (final AbstractEntityImExporter imExporter : imExporters) { @@ -89,7 +92,6 @@ final class EntityImExporterTreeManager { final List nodeList = new ArrayList<>(); for (final Map.Entry entry : nodes.entrySet()) { - nodeList.add(entry.getValue()); } @@ -120,16 +122,18 @@ final class EntityImExporterTreeManager { final List orderedNodes = new ArrayList<>(); final List resolvedNodes = new ArrayList<>(); - LOGGER.info("Looking for EntityImExporters which do not depend on any " - + "other EntityImExporters."); + LOGGER.info( + "Looking for EntityImExporters which do not depend on any " + + "other EntityImExporters." + ); //Find all nodes which do not depend on any other nodes. These //nodes are used as starting point for the sorting. for (final EntityImExporterTreeNode node : nodes) { - if (node.getDependsOn().isEmpty()) { LOGGER.info( "\tNode \"{}\" does not depend on any other module", - node.getEntityImExporter().getClass().getName()); + node.getEntityImExporter().getClass().getName() + ); resolvedNodes.add(node); } } @@ -139,9 +143,10 @@ final class EntityImExporterTreeManager { //Remove the first node from the resolved nodes list final EntityImExporterTreeNode current = resolvedNodes.remove(0); - LOGGER.info("\tProcessing node for EntityImExporter \"{}\"...", - current - .getEntityImExporter().getClass().getName()); + LOGGER.info( + "\tProcessing node for EntityImExporter \"{}\"...", + current.getEntityImExporter().getClass().getName() + ); //Add the node to the ordered modules list. orderedNodes.add(current); @@ -149,7 +154,6 @@ final class EntityImExporterTreeManager { //Remove the edges to the current node. for (final EntityImExporterTreeNode dependent : current.getDependentImExporters()) { - dependent.removeDependsOn(current); //If the dependent node has no more dependsOn relations put @@ -163,22 +167,26 @@ final class EntityImExporterTreeManager { //Check if all nodes have been ordered. If not the tree has at least on //on cycle and can't be processed. if (orderedNodes.size() == nodes.size()) { - - LOGGER.info("EntityImExporter dependency graph processed " - + "successfully. EntityImExporters in order:"); + LOGGER.info( + "EntityImExporter dependency graph processed " + + "successfully. EntityImExporters in order:" + ); for (final EntityImExporterTreeNode node : orderedNodes) { - LOGGER.info("\t{}", - node.getEntityImExporter().getClass().getName()); + LOGGER.info( + "\t{}", + node.getEntityImExporter().getClass().getName() + ); } return orderedNodes; } else { - - LOGGER.fatal("The EntityImExporter dependency graph has at least " - + "one cycle."); - throw new DependencyException("The EntityImExporter dependency " - + "graph has at least one cycle."); + LOGGER.fatal( + "The EntityImExporter dependency graph has at least one cycle." + ); + throw new DependencyException( + "The EntityImExporter dependency graph has at least one cycle." + ); } } @@ -194,38 +202,45 @@ final class EntityImExporterTreeManager { */ private void addDependencyRelations( final AbstractEntityImExporter imExporter, - final Map nodes) + final Map nodes + ) throws DependencyException { //Get the name of the module from the module info. final String className = imExporter.getEntityClass().getName(); LOGGER - .info("Adding dependency relations for EntityImExporter \"{}\"...", - className); + .info( + "Adding dependency relations for EntityImExporter \"{}\"...", + className + ); //Check if the nodes map has an entry for the EntityImExporter. if (!nodes.containsKey(className)) { - - LOGGER.fatal("EntityImExporter nodes map does contain an entry for " - + "\"{}\". That should not happen.", - className); - throw new IllegalArgumentException(String.format( - "The nodes map does not contain a node for " - + "EntityImExporter \"%s\"." - + "This should not happen.", - className)); + LOGGER.fatal( + "EntityImExporter nodes map does contain an entry for " + + "\"{}\". That should not happen.", + className + ); + throw new IllegalArgumentException( + String.format( + "The nodes map does not contain a node for " + + "EntityImExporter \"%s\"." + + "This should not happen.", + className + ) + ); } //Get the node from the map final EntityImExporterTreeNode node = nodes.get(className); - LOGGER - .info("Processing required modules for EntityImExporter \"{}\"...", - className); + LOGGER.info( + "Processing required modules for EntityImExporter \"{}\"...", + className + ); //Process the EntityImExporter required by the current module and add //the dependency relations. for (final Class clazz : imExporter.getRequiredEntities()) { - addDependencyRelation(nodes, node, clazz); } } @@ -247,25 +262,34 @@ final class EntityImExporterTreeManager { Class requiredClass) throws DependencyException { - LOGGER.info("\tEntityImExporter for \"{}\" requires " - + "EntityImExporter for \"{}\".", - node.getEntityImExporter().getClass().getName(), - requiredClass.getName()); + LOGGER.info( + "\tEntityImExporter for \"{}\" requires EntityImExporter " + + "for \"{}\".", + node.getEntityImExporter().getClass().getName(), + requiredClass.getName() + ); //Check if the nodes list has an entry for the required module. if (!nodes.containsKey(requiredClass.getName())) { - LOGGER.fatal("Required EntityImExporter for \"{}\" no found.", - requiredClass.getName()); - throw new DependencyException(String.format( - "EntityImExporter for type \"%s\" depends on type \"%s\" " - + "but no EntityImExporter for type \"%s\" is available.", - node.getEntityImExporter().getEntityClass(), - requiredClass.getName(), - requiredClass.getName())); + LOGGER.fatal( + "Required EntityImExporter for \"{}\" no found.", + requiredClass.getName() + ); + throw new DependencyException( + String.format( + "EntityImExporter for type \"%s\" depends on type \"%s\" " + + "but no EntityImExporter for type \"%s\" is " + + "available.", + node.getEntityImExporter().getEntityClass(), + requiredClass.getName(), + requiredClass.getName() + ) + ); } - final EntityImExporterTreeNode dependencyNode = nodes - .get(requiredClass.getName()); + final EntityImExporterTreeNode dependencyNode = nodes.get( + requiredClass.getName() + ); //Create the dependencies relations. node.addDependsOn(dependencyNode); diff --git a/ccm-core/src/main/java/org/libreccm/imexport/EntityImExporterTreeNode.java b/ccm-core/src/main/java/org/libreccm/imexport/EntityImExporterTreeNode.java index 1173dc42f..acdfe841c 100644 --- a/ccm-core/src/main/java/org/libreccm/imexport/EntityImExporterTreeNode.java +++ b/ccm-core/src/main/java/org/libreccm/imexport/EntityImExporterTreeNode.java @@ -45,7 +45,8 @@ public final class EntityImExporterTreeNode { } public EntityImExporterTreeNode( - final AbstractEntityImExporter entityImExporter) { + final AbstractEntityImExporter entityImExporter + ) { this(); this.entityImExporter = entityImExporter; @@ -73,42 +74,35 @@ public final class EntityImExporterTreeNode { } void addDependentImExporter(final EntityImExporterTreeNode node) { - dependentImExporters.add(node); } void removeDependentImExporter(final EntityImExporterTreeNode node) { - dependentImExporters.remove(node); } public List getDependsOn() { - return Collections.unmodifiableList(dependsOn); } void setDependsOn(final List dependsOn) { - this.dependsOn = new ArrayList<>(dependsOn); } void addDependsOn(final EntityImExporterTreeNode node) { - dependsOn.add(node); } void removeDependsOn(final EntityImExporterTreeNode node) { - dependsOn.remove(node); } @Override public int hashCode() { int hash = 7; - hash = 47 * hash - + Objects.hashCode( - this.entityImExporter.getClass().getName() - ); + hash = 47 * hash + Objects.hashCode( + this.entityImExporter.getClass().getName() + ); return hash; } @@ -126,7 +120,8 @@ public final class EntityImExporterTreeNode { final EntityImExporterTreeNode other = (EntityImExporterTreeNode) obj; return Objects.equals( this.entityImExporter.getClass().getName(), - other.getEntityImExporter().getClass().getName()); + other.getEntityImExporter().getClass().getName() + ); } @Override diff --git a/ccm-core/src/main/java/org/libreccm/imexport/ImportExpection.java b/ccm-core/src/main/java/org/libreccm/imexport/ImportExpection.java index d295dcccf..49954f10c 100644 --- a/ccm-core/src/main/java/org/libreccm/imexport/ImportExpection.java +++ b/ccm-core/src/main/java/org/libreccm/imexport/ImportExpection.java @@ -16,12 +16,11 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, * MA 02110-1301 USA */ - package org.libreccm.imexport; /** * Thrown if something goes wrong during an import process. - * + * * @author Jens Pelzetter */ public class ImportExpection extends Exception { @@ -29,15 +28,16 @@ public class ImportExpection extends Exception { private static final long serialVersionUID = 1L; /** - * Creates a new instance of ImportExpection without detail message. + * Creates a new instance of ImportExpection without detail + * message. */ public ImportExpection() { super(); } - /** - * Constructs an instance of ImportExpection with the specified detail message. + * Constructs an instance of ImportExpection with the specified + * detail message. * * @param msg The detail message. */ @@ -46,23 +46,24 @@ public class ImportExpection extends Exception { } /** - * Constructs an instance of ImportExpection which wraps the - * specified exception. - * - * @param exception The exception to wrap. - */ + * Constructs an instance of ImportExpection which wraps the + * specified exception. + * + * @param exception The exception to wrap. + */ public ImportExpection(final Exception exception) { super(exception); } /** - * Constructs an instance of ImportExpection with the specified message which also wraps the - * specified exception. - * - * @param msg The detail message. - * @param exception The exception to wrap. - */ + * Constructs an instance of ImportExpection with the specified + * message which also wraps the specified exception. + * + * @param msg The detail message. + * @param exception The exception to wrap. + */ public ImportExpection(final String msg, final Exception exception) { super(msg, exception); } + } diff --git a/ccm-core/src/main/java/org/libreccm/imexport/ImportExport.java b/ccm-core/src/main/java/org/libreccm/imexport/ImportExport.java index b58108d91..f759ddb92 100644 --- a/ccm-core/src/main/java/org/libreccm/imexport/ImportExport.java +++ b/ccm-core/src/main/java/org/libreccm/imexport/ImportExport.java @@ -518,7 +518,6 @@ public class ImportExport { public Class value() { return value; } - } } diff --git a/ccm-core/src/main/java/org/libreccm/security/RoleImExporter.java b/ccm-core/src/main/java/org/libreccm/security/RoleImExporter.java index ace2a41ac..c21fec3d5 100644 --- a/ccm-core/src/main/java/org/libreccm/security/RoleImExporter.java +++ b/ccm-core/src/main/java/org/libreccm/security/RoleImExporter.java @@ -67,11 +67,13 @@ public class RoleImExporter extends AbstractEntityImExporter { () -> new IllegalArgumentException( String.format( "Provided entity %d does not exist in database.", - entity) + entity + ) ) ); role.getDescription().getValues().forEach((locale, value) -> LOGGER - .info("{}: {}", locale, value)); + .info("{}: {}", locale, value) + ); return super.exportEntity(entity); } diff --git a/ccm-core/src/main/java/org/libreccm/security/RoleMembershipImExporter.java b/ccm-core/src/main/java/org/libreccm/security/RoleMembershipImExporter.java index c3679a1d8..bb3758451 100644 --- a/ccm-core/src/main/java/org/libreccm/security/RoleMembershipImExporter.java +++ b/ccm-core/src/main/java/org/libreccm/security/RoleMembershipImExporter.java @@ -74,7 +74,8 @@ public class RoleMembershipImExporter .setParameter( "membershipId", Objects.requireNonNull(entity).getMembershipId() - ).getSingleResult(); + ) + .getSingleResult(); } catch (NoResultException ex) { throw new IllegalArgumentException( String.format( diff --git a/ccm-core/src/main/java/org/libreccm/workflow/TaskAssignmentImExporter.java b/ccm-core/src/main/java/org/libreccm/workflow/TaskAssignmentImExporter.java index 7b685ed79..3576cb132 100644 --- a/ccm-core/src/main/java/org/libreccm/workflow/TaskAssignmentImExporter.java +++ b/ccm-core/src/main/java/org/libreccm/workflow/TaskAssignmentImExporter.java @@ -60,7 +60,6 @@ public class TaskAssignmentImExporter @Override protected Set> getRequiredEntities() { - final Set> classes = new HashSet<>(); classes.add(AssignableTask.class); diff --git a/ccm-core/src/main/java/org/libreccm/workflow/TaskDependencyImExporter.java b/ccm-core/src/main/java/org/libreccm/workflow/TaskDependencyImExporter.java index 128dce652..0e5697249 100644 --- a/ccm-core/src/main/java/org/libreccm/workflow/TaskDependencyImExporter.java +++ b/ccm-core/src/main/java/org/libreccm/workflow/TaskDependencyImExporter.java @@ -75,7 +75,8 @@ public class TaskDependencyImExporter .setParameter( "dependencyId", Objects.requireNonNull(entity).getTaskDependencyId() - ).getSingleResult(); + ) + .getSingleResult(); } catch (NoResultException ex) { throw new IllegalArgumentException( String.format(