aboutsummaryrefslogtreecommitdiff
path: root/id/server/idserverlib/src/main/java/at/gv
diff options
context:
space:
mode:
Diffstat (limited to 'id/server/idserverlib/src/main/java/at/gv')
-rw-r--r--id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/ConfigurationToJSONConverter.java42
1 files changed, 40 insertions, 2 deletions
diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/ConfigurationToJSONConverter.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/ConfigurationToJSONConverter.java
index 90543e588..39225a5b0 100644
--- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/ConfigurationToJSONConverter.java
+++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/ConfigurationToJSONConverter.java
@@ -4,12 +4,16 @@ import java.beans.IntrospectionException;
import java.beans.Introspector;
import java.beans.PropertyDescriptor;
import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.util.Arrays;
+import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.config.AutowireCapableBeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
+import at.gv.egovernment.moa.id.commons.db.ConfigurationDBRead;
import at.gv.egovernment.moa.id.config.ConfigurationException;
import at.gv.egovernment.moa.id.config.ConfigurationProvider;
@@ -33,6 +37,14 @@ public class ConfigurationToJSONConverter {
System.out.println("=====================================");
System.out.println("=====================================");
converter.readConfigFromDB();
+ System.out.println("=====================================");
+ System.out.println("=====================================");
+
+ // otherwise the database connection is not initialized
+ AuthConfigurationProvider.getInstance();
+ List<String> methodNames = Arrays.asList("getAllOnlineApplications", "getAllUsers", "getMOAIDConfiguration");
+ converter.extractDataViaConfigurationDBRead(methodNames);
+ converter.readExtractedConfigurationDBReadData(methodNames);
} catch (ConfigurationException e) {
e.printStackTrace();
@@ -51,6 +63,33 @@ public class ConfigurationToJSONConverter {
}
+ public void extractDataViaConfigurationDBRead(List<String> methodNames) {
+ System.out.println("Start extracting");
+ // read objects from db and write to key-value
+ for (String name : methodNames) {
+ try {
+ Method method = ConfigurationDBRead.class.getMethod(name);
+ Object tmp = method.invoke(null, new Object[] {});
+ JsonProperty annotation = method.getAnnotation(JsonProperty.class);
+ if (annotation != null) {
+ configDataBase.set(annotation.value(), tmp);
+ } else {
+ System.out.println("Annotate Method with name: " + name);
+ }
+ } catch (NoSuchMethodException | SecurityException | IllegalAccessException | IllegalArgumentException
+ | InvocationTargetException e) {
+ System.out.println("Problems while extracting ConfigurationDBRead data.");
+ }
+ }
+ }
+
+ public void readExtractedConfigurationDBReadData(List<String> methodNames) {
+ for (String name : methodNames) {
+ Object tmp = configDataBase.get(name);
+ System.out.println(">>> OBJECT: " + tmp);
+ }
+ }
+
public void writeConfigToJSONDB() {
try {
@@ -73,8 +112,7 @@ public class ConfigurationToJSONConverter {
System.out.println("CHECK if '" + pd.getDisplayName() + "' is NOT ANNOTATED");
}
} catch (IllegalAccessException | InvocationTargetException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
+ System.out.println("Problems while writing the configuration to the database.");
}
}
}