1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.org.usurper.utils;
20
21 import java.util.SortedSet;
22 import java.util.TreeSet;
23
24 import org.org.usurper.handlers.basic.AbstractSpecificPropertyHandler;
25 import org.org.usurper.model.PropertyTypeDefinition;
26 import org.org.usurper.setup.IUsurperGeneratorSetup;
27
28
29
30
31
32 public final class UsurperGeneratorSetupUtils {
33
34 private UsurperGeneratorSetupUtils() {
35 }
36
37
38
39
40
41
42
43
44 public static String buildStringRepresentation(IUsurperGeneratorSetup usurperGeneratorSetup) {
45 StringBuilder stringBuilder = new StringBuilder();
46 stringBuilder.append("--------------------------------------------\n");
47 stringBuilder.append("Usurper Generator setup:" + usurperGeneratorSetup.getClass().getName() + "\n");
48 stringBuilder.append("---------\n");
49 stringBuilder.append("Array handler: " + usurperGeneratorSetup.getArrayHandler().getClass().getName() + "\n");
50 stringBuilder.append("Enum handler: " + usurperGeneratorSetup.getEnumHandler().getClass().getName() + "\n");
51 stringBuilder.append("Count callback: " + usurperGeneratorSetup.getCountCallback().getClass().getName() + "\n");
52 stringBuilder.append("On missing handlers: " + usurperGeneratorSetup.getOnMissingHandlers().toString() + "\n");
53 stringBuilder.append("Property writing mechanism: " + usurperGeneratorSetup.getPropertyWritingMechanism().toString() + "\n");
54 stringBuilder.append("---------\n");
55 SortedSet<String> sortedSet = new TreeSet<String>();
56 for (PropertyTypeDefinition handledProperty : usurperGeneratorSetup.getPropertyTypeHandlersMap().keySet()) {
57 sortedSet.add(handledProperty + ": " + usurperGeneratorSetup.getPropertyTypeHandlersMap().get(handledProperty).getClass().getName() + "\n");
58 }
59 for (String message : sortedSet) {
60 stringBuilder.append(message);
61 }
62 stringBuilder.append("---------\n");
63 sortedSet = new TreeSet<String>();
64 for (AbstractSpecificPropertyHandler abstractSpecificPropertyHandler : usurperGeneratorSetup.getSpecificPropertyHandlersMap().values()) {
65 sortedSet.add(abstractSpecificPropertyHandler.getTargetProperty().getPropertyPathString() + ": " + abstractSpecificPropertyHandler.getClass().getName() + "\n");
66 }
67 for (String message : sortedSet) {
68 stringBuilder.append(message);
69 }
70 stringBuilder.append("--------------------------------------------\n");
71 return stringBuilder.toString();
72 }
73
74 }