Hi Adrian,
we have an additional component here which integrate selenium with junit
in OFBiz.
Because of the change below, our code does not compile anymore and i was
wondering if you can give us suggestions how to modify our code:
1. ModelTestSuite modelTestSuite = new
ModelTestSuite(testSuiteInfo.componentConfig.getComponentName(),
documentElement, testCase);
gives the error:
componentConfig has private access in
org.ofbiz.base.component.ComponentConfig.ResourceInfo
2. TestSuiteInfo testSuiteInfo = new TestSuiteInfo(componentConfig,
testSuiteElement);
gives the error:
TestSuiteInfo(org.ofbiz.base.component.ComponentConfig,org.w3c.dom.Element)
has private access in org.ofbiz.base.component.ComponentConfig.TestSuiteInfo
was it really required to change these signatures? If yes, please
suggest how to solve this.....
Regards,
Hans
On 10/22/2013 02:22 AM, [email protected] wrote:
Author: adrianc
Date: Mon Oct 21 19:22:21 2013
New Revision: 1534331
URL: http://svn.apache.org/r1534331
Log:
ComponentConfig.java refactor - improved thread-safety for the WebappInfo inner
class.
Modified:
ofbiz/trunk/framework/base/src/org/ofbiz/base/component/ComponentConfig.java
ofbiz/trunk/framework/catalina/src/org/ofbiz/catalina/container/CatalinaContainer.java
Modified:
ofbiz/trunk/framework/base/src/org/ofbiz/base/component/ComponentConfig.java
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/org/ofbiz/base/component/ComponentConfig.java?rev=1534331&r1=1534330&r2=1534331&view=diff
==============================================================================
---
ofbiz/trunk/framework/base/src/org/ofbiz/base/component/ComponentConfig.java
(original)
+++
ofbiz/trunk/framework/base/src/org/ofbiz/base/component/ComponentConfig.java
Mon Oct 21 19:22:21 2013
@@ -206,7 +206,7 @@ public final class ComponentConfig {
for (ComponentConfig cc : getAllComponents()) {
for (WebappInfo wInfo : cc.getWebappInfos()) {
String key = UtilValidate.isNotEmpty(wInfo.position) ?
wInfo.position : wInfo.title;
- if (serverName.equals(wInfo.server) &&
wInfo.appBarDisplay) {
+ if (serverName.equals(wInfo.server) &&
wInfo.getAppBarDisplay()) {
if (UtilValidate.isNotEmpty(menuName)) {
if (menuName.equals(wInfo.menuName)) {
tm.put(key, wInfo);
@@ -781,10 +781,10 @@ public final class ComponentConfig {
public final String location;
public final String[] basePermission;
public final String position;
- // FIXME: CatalinaContainer modifies this field.
- public boolean appBarDisplay;
public final boolean sessionCookieAccepted;
public final boolean privileged;
+ // CatalinaContainer modifies this field.
+ private volatile boolean appBarDisplay;
private WebappInfo(ComponentConfig componentConfig, Element element) {
this.componentConfig = componentConfig;
@@ -873,6 +873,10 @@ public final class ComponentConfig {
}
}
+ public synchronized boolean getAppBarDisplay() {
+ return this.appBarDisplay;
+ }
+
public String[] getBasePermission() {
return this.basePermission;
}
@@ -908,5 +912,9 @@ public final class ComponentConfig {
public boolean isSessionCookieAccepted() {
return sessionCookieAccepted;
}
+
+ public synchronized void setAppBarDisplay(boolean appBarDisplay) {
+ this.appBarDisplay = appBarDisplay;
+ }
}
}
Modified:
ofbiz/trunk/framework/catalina/src/org/ofbiz/catalina/container/CatalinaContainer.java
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/framework/catalina/src/org/ofbiz/catalina/container/CatalinaContainer.java?rev=1534331&r1=1534330&r2=1534331&view=diff
==============================================================================
---
ofbiz/trunk/framework/catalina/src/org/ofbiz/catalina/container/CatalinaContainer.java
(original)
+++
ofbiz/trunk/framework/catalina/src/org/ofbiz/catalina/container/CatalinaContainer.java
Mon Oct 21 19:22:21 2013
@@ -779,7 +779,7 @@ public class CatalinaContainer implement
List<String> virtualHosts = appInfo.getVirtualHosts();
String mount = appInfo.getContextRoot();
List<String> keys = FastList.newInstance();
- if (UtilValidate.isEmpty(virtualHosts)) {
+ if (virtualHosts.isEmpty()) {
keys.add(engineName + ":DEFAULT:" + mount);
} else {
for (String virtualHost: virtualHosts) {
@@ -790,12 +790,12 @@ public class CatalinaContainer implement
// nothing was removed from the new list of keys; this
// means there are no existing loaded entries that overlap
// with the new set
- if (appInfo.location != null) {
+ if (!appInfo.location.isEmpty()) {
futures.add(executor.submit(createContext(appInfo)));
}
loadedMounts.addAll(keys);
} else {
- appInfo.appBarDisplay = false; // disable app bar display
on overrided apps
+ appInfo.setAppBarDisplay(false); // disable app bar
display on overrided apps
Debug.logInfo("Duplicate webapp mount; not loading : " +
appInfo.getName() + " / " + appInfo.getLocation(), module);
}
}