Mercurial > dive4elements > framework
diff artifact-database/src/main/java/de/intevation/artifactdatabase/FactoryBootstrap.java @ 79:f69e5b87f05f
Implementation to export artifacts as xml (applied patch from issue208 by SLT).
artifacts/trunk@792 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Tue, 16 Mar 2010 16:03:06 +0000 |
parents | 48d1a9a082c2 |
children | d348fe1fd822 |
line wrap: on
line diff
--- a/artifact-database/src/main/java/de/intevation/artifactdatabase/FactoryBootstrap.java Thu Mar 11 10:53:59 2010 +0000 +++ b/artifact-database/src/main/java/de/intevation/artifactdatabase/FactoryBootstrap.java Tue Mar 16 16:03:06 2010 +0000 @@ -10,6 +10,7 @@ import org.w3c.dom.Document; import org.w3c.dom.NodeList; + /** * Bootstrap facility for the global context and the artifact factories. * @@ -31,12 +32,21 @@ public static final String SERVICE_FACTORIES = "/artifact-database/factories/service-factories/service-factory"; + public static final String EXPORT_SECRET = + "/artifact-database/export-secret/text()"; + + public static final String DEFAULT_EXORT_SECRET = + "!!!CHANGE ME! I'M NO SECRET!!!"; + protected Object context; protected ArtifactFactory [] artifactFactories; protected ServiceFactory [] serviceFactories; + protected byte [] exportSecret; + + public FactoryBootstrap() { } @@ -167,7 +177,19 @@ new ServiceFactory[loadedFactories.size()]); } + protected void setupExportSecret() { + String secret = Config.getStringXPath(EXPORT_SECRET); + + if (secret == null) { + logger.warn("NO EXPORT SECRET SET! USING INSECURE DEFAULT!"); + secret = DEFAULT_EXORT_SECRET; + } + + exportSecret = StringUtils.getUTF8Bytes(secret); + } + public void boot() { + setupExportSecret(); buildContext(); loadArtifactFactories(); loadServiceFactories(); @@ -184,5 +206,9 @@ public Object getContext() { return context; } + + public byte [] getExportSecret() { + return exportSecret; + } } -// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8: +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :