[Yanel-commits] rev 28434 -
public/yanel/trunk/src/core/java/org/wyona/yanel/core/map
michi at wyona.com
michi at wyona.com
Sat Nov 3 01:46:02 CET 2007
Author: michi
Date: 2007-11-03 01:46:01 +0100 (Sat, 03 Nov 2007)
New Revision: 28434
Modified:
public/yanel/trunk/src/core/java/org/wyona/yanel/core/map/Realm.java
Log:
realm config path resolved added
Modified: public/yanel/trunk/src/core/java/org/wyona/yanel/core/map/Realm.java
===================================================================
--- public/yanel/trunk/src/core/java/org/wyona/yanel/core/map/Realm.java 2007-11-03 00:23:35 UTC (rev 28433)
+++ public/yanel/trunk/src/core/java/org/wyona/yanel/core/map/Realm.java 2007-11-03 00:46:01 UTC (rev 28434)
@@ -116,7 +116,7 @@
try {
String customPolicyManagerFactoryImplClassName = repoConfigElement.getAttribute("class");
pmFactory = (PolicyManagerFactory) Class.forName(customPolicyManagerFactoryImplClassName).newInstance();
- policyManager = pmFactory.newPolicyManager(ConfigurationUtil.getCustomConfiguration(repoConfigElement, "policy-manager-config", "http://www.wyona.org/security/1.0"), null);
+ policyManager = pmFactory.newPolicyManager(ConfigurationUtil.getCustomConfiguration(repoConfigElement, "policy-manager-config", "http://www.wyona.org/security/1.0"), new RealmConfigPathResolver(this));
} catch (ConfigurationException e) {
pmFactory = (PolicyManagerFactory) yanel.getBeanFactory().getBean("PolicyManagerFactory");
log.info("Default PolicyManager will be used for realm: " + getName());
@@ -440,3 +440,27 @@
this.languageHandler = languageHandler;
}
}
+
+/**
+ *
+ */
+class RealmConfigPathResolver implements javax.xml.transform.URIResolver {
+
+ private File realmConfigFile;
+
+ /**
+ *
+ */
+ public RealmConfigPathResolver(Realm realm) {
+ realmConfigFile = realm.getConfigFile();
+ }
+
+ /**
+ *
+ */
+ public javax.xml.transform.Source resolve(String href, String base) throws javax.xml.transform.TransformerException {
+ javax.xml.transform.Source source = new javax.xml.transform.stream.StreamSource();
+ source.setSystemId(FileUtil.resolve(realmConfigFile, new File(href)).toString());
+ return source;
+ }
+}
More information about the Yanel-commits
mailing list