modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/ExistingResourceConfigurationUIBean.java
| 312 ++++++++
modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigCollection.java
| 364 ----------
modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigDelegate.java
| 100 --
modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigDelegateMap.java
| 58 -
modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigDownload.java
| 53 -
modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigViewer.java
| 69 -
modules/enterprise/gui/portal-war/src/main/webapp/WEB-INF/jsf-managed-beans/configuration-beans.xml
| 8
modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/edit-raw.xhtml
| 22
modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/edit.xhtml
| 4
modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/view-raw.xhtml
| 6
modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/configuration/ConfigurationManagerBean.java
| 30
11 files changed, 332 insertions(+), 694 deletions(-)
New commits:
commit b28233475d75e80c01c217ac16e86c897ec262f1
Author: Adam Young <ayoung(a)redhat.com>
Date: Mon Nov 30 17:29:21 2009 -0500
Removed additional files that break the build
diff --git
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/ExistingResourceConfigurationUIBean.java
b/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/ExistingResourceConfigurationUIBean.java
index 8097b32..ef7d7df 100644
---
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/ExistingResourceConfigurationUIBean.java
+++
b/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/ExistingResourceConfigurationUIBean.java
@@ -152,7 +152,7 @@ public class ExistingResourceConfigurationUIBean extends
AbstractConfigurationUI
return configuration;
}
- private final Log log = LogFactory.getLog(RawConfigCollection.class);
+ private final Log log = LogFactory.getLog(AbstractConfigurationUIBean.class);
private Integer resourceId = null;
private static final long serialVersionUID = 4837157548556168146L;
diff --git
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigDownload.java
b/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigDownload.java
deleted file mode 100644
index 7c4859d..0000000
---
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigDownload.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package org.rhq.enterprise.gui.configuration.resource;
-
-import javax.faces.context.ExternalContext;
-import javax.faces.context.FacesContext;
-import javax.servlet.ServletOutputStream;
-import javax.servlet.http.HttpServletResponse;
-
-import org.jboss.seam.ScopeType;
-import org.jboss.seam.annotations.Create;
-import org.jboss.seam.annotations.In;
-import org.jboss.seam.annotations.Logger;
-import org.jboss.seam.annotations.Name;
-import org.jboss.seam.annotations.Scope;
-import org.jboss.seam.log.Log;
-
-@Name("rawConfigDownload")
-(a)Scope(ScopeType.PAGE)
-public class RawConfigDownload {
-
- @Logger
- private Log log;
-
- @In(value = "#{rawConfigCollection}")
- RawConfigCollection rawConfigCollection;
-
- @In(value = "#{facesContext}")
- FacesContext facesContext;
-
- @In(value = "#{facesContext.externalContext}")
- private ExternalContext extCtx;
-
- @Create
- public void init() {
- log.error("starting");
- }
-
- public String download() {
- HttpServletResponse response = (HttpServletResponse) extCtx.getResponse();
- response.setContentType("text/plain");
- response.addHeader("Content-disposition", "attachment;
filename=\"testing.txt\"");
- try {
- ServletOutputStream os = response.getOutputStream();
- os.write(rawConfigCollection.getCurrent().getContents());
- os.flush();
- os.close();
- facesContext.responseComplete();
- } catch (Exception e) {
- log.error("\nFailure : " + e.toString() + "\n");
- }
-
- return null;
- }
-}
\ No newline at end of file
diff --git
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigViewer.java
b/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigViewer.java
deleted file mode 100644
index d794c37..0000000
---
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigViewer.java
+++ /dev/null
@@ -1,69 +0,0 @@
-package org.rhq.enterprise.gui.configuration.resource;
-
-import java.util.Iterator;
-import java.util.TreeMap;
-
-import org.jboss.seam.ScopeType;
-import org.jboss.seam.annotations.Name;
-import org.jboss.seam.annotations.Scope;
-
-import org.rhq.core.domain.configuration.RawConfiguration;
-import org.rhq.enterprise.gui.util.EnterpriseFacesContextUtility;
-
-@Name("RawConfigViewer")
-(a)Scope(ScopeType.SESSION)
-public class RawConfigViewer {
-
- RawConfigDelegate rawConfigDelegate;
-
- int getResourceId() {
- int resourceId = EnterpriseFacesContextUtility.getResource().getId();
- return resourceId;
- }
-
- public RawConfigDelegate getRawConfigDelegate() {
- if (null == rawConfigDelegate || (getResourceId() !=
rawConfigDelegate.resourceId)) {
- rawConfigDelegate = new RawConfigDelegate(getResourceId());
- }
- return rawConfigDelegate;
- }
-
- public TreeMap<String, RawConfiguration> getRaws() {
- return getRawConfigDelegate().getRaws();
- }
-
- public void setCurrentPath(String path) {
- RawConfiguration raw = getRaws().get(path);
- if (null != raw) {
- getRawConfigDelegate().current = raw;
- }
- }
-
- public String getCurrentContents() {
- return new String(getCurrent().getContents());
- }
-
- public Object[] getPaths() {
- return getRaws().keySet().toArray();
- }
-
- public void select(String s) {
- getRawConfigDelegate().selectedPath = s;
- setCurrentPath(getRawConfigDelegate().selectedPath);
- }
-
- public RawConfiguration getCurrent() {
- if (null == getRawConfigDelegate().current) {
- Iterator<RawConfiguration> iterator = getRaws().values().iterator();
- if (iterator.hasNext()) {
- getRawConfigDelegate().current = iterator.next();
- } else {
- getRawConfigDelegate().current = new RawConfiguration();
- getRawConfigDelegate().current.setPath("/dev/null");
- getRawConfigDelegate().current.setContents("".getBytes());
- }
- }
- return getRawConfigDelegate().current;
- }
-
-}
commit 66ca6b483d297a7f7dc6185f09525a66a6a76b85
Merge: 6da3b35... f013bcd...
Author: Adam Young <ayoung(a)redhat.com>
Date: Mon Nov 30 17:00:28 2009 -0500
Merge branch 'raw-config' of
ssh://git.fedorahosted.org/git/rhq/rhq into
raw-config
commit 6da3b35c0f05f6b959efe944dd2fc1a3a6d15b04
Author: Adam Young <ayoung(a)redhat.com>
Date: Mon Nov 30 17:00:01 2009 -0500
Merged Raw Config Collection Functionality into the class used for Structured, and
dropped the ability to maintain multiple edits going at once.
diff --git
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/ExistingResourceConfigurationUIBean.java
b/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/ExistingResourceConfigurationUIBean.java
index 846b867..8097b32 100644
---
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/ExistingResourceConfigurationUIBean.java
+++
b/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/ExistingResourceConfigurationUIBean.java
@@ -18,18 +18,29 @@
*/
package org.rhq.enterprise.gui.configuration.resource;
+import java.io.File;
+import java.io.FileReader;
+import java.io.IOException;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.TreeMap;
+
import javax.faces.application.FacesMessage;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
import org.jetbrains.annotations.Nullable;
+import org.richfaces.event.UploadEvent;
-import org.jboss.seam.ScopeType;
-import org.jboss.seam.annotations.In;
-import org.jboss.seam.annotations.Name;
-import org.jboss.seam.annotations.Scope;
+import org.jboss.seam.annotations.Create;
+import org.rhq.core.domain.auth.Subject;
import org.rhq.core.domain.configuration.AbstractResourceConfigurationUpdate;
import org.rhq.core.domain.configuration.Configuration;
+import org.rhq.core.domain.configuration.Property;
+import org.rhq.core.domain.configuration.RawConfiguration;
import org.rhq.core.domain.configuration.definition.ConfigurationDefinition;
+import org.rhq.core.domain.configuration.definition.ConfigurationFormat;
import org.rhq.core.gui.configuration.ConfigurationMaskingUtility;
import org.rhq.core.gui.util.FacesContextUtility;
import org.rhq.enterprise.gui.configuration.AbstractConfigurationUIBean;
@@ -40,8 +51,8 @@ import org.rhq.enterprise.server.util.LookupUtil;
/**
* @author Ian Springer
*/
-@Name(value = "ExistingResourceConfigurationUIBean")
-(a)Scope(ScopeType.PAGE)
+//@ Name(value = "ExistingResourceConfigurationUIBean")
+//@ Scope(ScopeType.PAGE)
public class ExistingResourceConfigurationUIBean extends AbstractConfigurationUIBean {
public static final String MANAGED_BEAN_NAME =
"ExistingResourceConfigurationUIBean";
@@ -129,8 +140,6 @@ public class ExistingResourceConfigurationUIBean extends
AbstractConfigurationUI
@Nullable
protected Configuration lookupConfiguration() {
-
- /*
Subject subject = EnterpriseFacesContextUtility.getSubject();
int resourceId = EnterpriseFacesContextUtility.getResource().getId();
AbstractResourceConfigurationUpdate configurationUpdate =
this.configurationManager
@@ -141,21 +150,292 @@ public class ExistingResourceConfigurationUIBean extends
AbstractConfigurationUI
}
return configuration;
- */
+ }
+
+ private final Log log = LogFactory.getLog(RawConfigCollection.class);
+ private Integer resourceId = null;
+
+ private static final long serialVersionUID = 4837157548556168146L;
+
+ public String commit() {
+
+ Subject subject = EnterpriseFacesContextUtility.getSubject();
+ LookupUtil.getConfigurationManager().updateResourceConfiguration(subject,
getResourceId(),
+ getMergedConfiguration());
+
+ nullify();
+
+ return "/rhq/resource/configuration/view.xhtml?id=" + getResourceId();
+ }
+
+ private Configuration getMergedConfiguration() {
+ for (RawConfiguration raw : getModified().values()) {
+ getRaws().put(raw.getPath(), raw);
+ log.error("Just merged in raw path =[" + raw.getPath() +
"]");
+ log.error(" file =[" + new
String(raw.getContents()) + "]");
+
+ }
+ getConfiguration().getRawConfigurations().clear();
+ getConfiguration().getRawConfigurations().addAll(getRaws().values());
+ return getConfiguration();
+ }
+
+ public String discard() {
+ nullify();
+ return "/rhq/resource/configuration/view.xhtml?id=" + getResourceId();
+ }
+
+ public void fileUploadListener(UploadEvent event) throws Exception {
+ File uploadFile;
+ log.error("fileUploadListener called");
+ uploadFile = event.getUploadItem().getFile();
+ if (uploadFile != null) {
+ log.debug("fileUploadListener got file named " +
event.getUploadItem().getFileName());
+ log.debug("content type is " +
event.getUploadItem().getContentType());
+ if (uploadFile != null) {
+ try {
+ FileReader fileReader = new FileReader(uploadFile);
+ char[] buff = new char[1024];
+ StringBuffer stringBuffer = new StringBuffer();
+ for (int count = fileReader.read(buff); count != -1; count =
fileReader.read(buff)) {
+ stringBuffer.append(buff, 0, count);
+ }
+ setCurrentContents(stringBuffer.toString());
+ } catch (IOException e) {
+ log.error("problem reading uploaded file", e);
+ }
+ }
+ }
+ }
+
+ public int getConfigId() {
+ return getConfiguration().getId();
+ }
+
+ /*
+ public Configuration getConfiguration() {
+ if (null == configuration) {
+
+ Subject subject = EnterpriseFacesContextUtility.getSubject();
+ int resourceId = EnterpriseFacesContextUtility.getResource().getId();
+ AbstractResourceConfigurationUpdate configurationUpdate =
LookupUtil.getConfigurationManager()
+ .getLatestResourceConfigurationUpdate(subject, resourceId);
+ Configuration configuration = (configurationUpdate != null) ?
configurationUpdate.getConfiguration() : null;
+ if (configuration != null) {
+ //ConfigurationMaskingUtility.maskConfiguration(configuration,
getConfigurationDefinition());
+ }
+
+ return configuration;
+
+ }
+ return configuration;
+
+ }
+ */
+
+ private ConfigurationFormat getConfigurationFormat() {
+ return getConfigurationDefinition().getConfigurationFormat();
+ }
+
+ public RawConfiguration getCurrent() {
+ if (null == current) {
+ Iterator<RawConfiguration> iterator = getRaws().values().iterator();
+ if (iterator.hasNext()) {
+ current = iterator.next();
+ } else {
+ current = new RawConfiguration();
+ current.setPath("/dev/null");
+ current.setContents("".getBytes());
+ }
+ }
+ return current;
+ }
+
+ public String getCurrentContents() {
+ return new String(getCurrent().getContents());
+ }
+
+ public String getCurrentPath() {
+ return getCurrent().getPath();
+ }
+
+ public TreeMap<String, RawConfiguration> getModified() {
+ if (modified == null) {
+ modified = new TreeMap<String, RawConfiguration>();
+ }
+ return modified;
+ }
+
+ public Object[] getPaths() {
+ return getRaws().keySet().toArray();
+ }
+
+ /**
+ *
+ * @return the id associated with the resource.
+ * The value Cached in order to be available on the upload page,
+ * where seeing the resource id conflicts with the rich upload tag.
+ */
+ public int getResourceId() {
+ if (resourceId == null) {
+ resourceId = EnterpriseFacesContextUtility.getResource().getId();
+ }
+ return resourceId;
+ }
+
+ /**
+ * Hack Alert. This bean needs to be initialized on one of the pages that has id or
resourceId set
+ * In order to capture the resource. It will then Keep track of that particular
resources until
+ * commit is called. Ideally, this should be a conversation scoped bean, but that
has other issues
+ *
+ */
+ @Create
+ public void init() {
- return getRawConfigCollection().getConfiguration();
+ }
+
+ public boolean isModified(String path) {
+ return getModified().keySet().contains(path);
+ }
+
+ public boolean isRawSupported() {
+ return getConfigurationFormat().isRawSupported();
+ }
+
+ public boolean isStructuredSupported() {
+ return getConfigurationFormat().isStructuredSupported();
+ }
+
+ void nullify() {
+
+ }
+
+ /**
+ * Indicates which of the raw configuration files is currently selected.
+ * @param s
+ */
+ public void select(String s) {
+ selectedPath = s;
+ setCurrentPath(selectedPath);
+ }
+
+ public void setCurrentContents(String updated) {
+
+ String original = new String(getCurrent().getContents());
+ if (!updated.equals(original)) {
+ current = current.deepCopy(false);
+ current.setContents(updated.getBytes());
+ //TODO update other values like MD5
+ getModified().put(current.getPath(), current);
+ }
+ }
+
+ public void setCurrentPath(String path) {
+ RawConfiguration raw = getModified().get(path);
+ if (null == raw) {
+ raw = getRaws().get(path);
+ }
+ if (null != raw) {
+ current = raw;
+ }
+ }
+
+ public void setModified(RawConfiguration raw) {
+ getModified().put(raw.getPath(), raw);
+ }
+
+ /**
+ * This is a no-op, since the upload work was done by upload file
+ * But is kept as a target for the "save" icon from the full screen page
+ */
+ public String update() {
+ return "/rhq/resource/configuration/edit-raw.xhtml?currentResourceId="
+ getResourceId();
+ }
+ /**
+ * This is a no-op, since the upload work was done by upload file
+ * But is kept as a target for the "action" value
+ */
+ public String upload() {
+ return "/rhq/resource/configuration/edit-raw.xhtml?currentResourceId="
+ getResourceId();
}
- @In(create = true, required = true, value = "rawConfigCollection")
- RawConfigCollection rawConfigCollection;
+ public String switchToraw() {
+ log.error("switch2raw called");
+ dumpProperties(getConfiguration(), log);
+ Configuration configuration =
LookupUtil.getConfigurationManager().translateResourceConfiguration(
+ EnterpriseFacesContextUtility.getSubject(), getResourceId(),
getMergedConfiguration(), true);
+ log.error("switch2raw post merge");
+ dumpProperties(getConfiguration(), log);
- public RawConfigCollection getRawConfigCollection() {
- return rawConfigCollection;
+ setConfiguration(configuration);
+ for (RawConfiguration raw : configuration.getRawConfigurations()) {
+ getRaws().put(raw.getPath(), raw);
+ }
+ current = null;
+ setConfiguration(configuration);
+
+ return "/rhq/resource/configuration/edit-raw.xhtml?currentResourceId="
+ getResourceId();
+ }
+
+ void dumpProperties(Configuration conf, Log log) {
+ for (String key : conf.getAllProperties().keySet()) {
+ log.error("property=" + conf.getAllProperties().get(key));
+ }
+ }
+
+ public String switchTostructured() {
+ log.error("switch2structured called");
+
+ dumpProperties(getConfiguration(), log);
+ Configuration configuration =
LookupUtil.getConfigurationManager().translateResourceConfiguration(
+ EnterpriseFacesContextUtility.getSubject(), getResourceId(),
getMergedConfiguration(), false);
+ log.error("switch2structured post merge");
+
+ dumpProperties(configuration, log);
+
+ for (Property property : configuration.getAllProperties().values()) {
+ property.setConfiguration(configuration);
+ }
+
+ for (RawConfiguration raw : configuration.getRawConfigurations()) {
+ getRaws().put(raw.getPath(), raw);
+ setConfiguration(configuration);
+ }
+ current = null;
+ setConfiguration(configuration);
+
+ return "/rhq/resource/configuration/edit.xhtml?currentResourceId=" +
getResourceId();
+ }
+
+ void populateRaws() {
+ Collection<RawConfiguration> rawConfigurations =
getConfiguration().getRawConfigurations();
+
+ for (RawConfiguration raw : rawConfigurations) {
+ raws.put(raw.getPath(), raw);
+ }
}
- public void setRawConfigCollection(RawConfigCollection rawConfigCollection) {
- this.rawConfigCollection = rawConfigCollection;
+ public void setRaws(TreeMap<String, RawConfiguration> raws) {
+ this.raws = raws;
}
+ public TreeMap<String, RawConfiguration> getRaws() {
+
+ if (null == raws) {
+ raws = new TreeMap<String, RawConfiguration>();
+ populateRaws();
+ }
+
+ return raws;
+ }
+
+ /**
+ *
+ */
+ String selectedPath;
+ private TreeMap<String, RawConfiguration> raws;
+ TreeMap<String, RawConfiguration> modified = new TreeMap<String,
RawConfiguration>();
+ RawConfiguration current = null;
+
}
\ No newline at end of file
diff --git
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigCollection.java
b/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigCollection.java
deleted file mode 100644
index 29dbe4b..0000000
---
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigCollection.java
+++ /dev/null
@@ -1,364 +0,0 @@
-package org.rhq.enterprise.gui.configuration.resource;
-
-import java.io.File;
-import java.io.FileReader;
-import java.io.IOException;
-import java.io.Serializable;
-import java.util.Iterator;
-import java.util.TreeMap;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.richfaces.event.UploadEvent;
-
-import org.jboss.seam.ScopeType;
-import org.jboss.seam.annotations.Create;
-import org.jboss.seam.annotations.End;
-import org.jboss.seam.annotations.In;
-import org.jboss.seam.annotations.Name;
-import org.jboss.seam.annotations.Scope;
-
-import org.rhq.core.domain.auth.Subject;
-import org.rhq.core.domain.configuration.Configuration;
-import org.rhq.core.domain.configuration.Property;
-import org.rhq.core.domain.configuration.RawConfiguration;
-import org.rhq.core.domain.configuration.definition.ConfigurationDefinition;
-import org.rhq.core.domain.configuration.definition.ConfigurationFormat;
-import org.rhq.enterprise.gui.configuration.AbstractConfigurationUIBean;
-import org.rhq.enterprise.gui.util.EnterpriseFacesContextUtility;
-import org.rhq.enterprise.server.util.LookupUtil;
-
-@Name("rawConfigCollection")
-(a)Scope(ScopeType.PAGE)
-/**
- * The backing class for all Web based activities for manipulating the set of
- * raw configuration files associated with a resource
- */
-public class RawConfigCollection extends AbstractConfigurationUIBean implements
Serializable {
-
- private RawConfigDelegate rawConfigDelegate = null;
- private RawConfigDelegateMap rawConfigDelegateMap;
-
- /*This is for development, to prevent actually going to the EJBs.
- TODO It should be set to false prior to check in*/
- private static final boolean useMock = false;
-
- private final Log log = LogFactory.getLog(RawConfigCollection.class);
- private Integer resourceId = null;
-
- private static final long serialVersionUID = 4837157548556168146L;
-
- public RawConfigCollection() {
- }
-
- @End
- public String commit() {
-
- Subject subject = EnterpriseFacesContextUtility.getSubject();
- LookupUtil.getConfigurationManager().updateResourceConfiguration(subject,
getResourceId(),
- getMergedConfiguration());
-
- nullify();
-
- return "/rhq/resource/configuration/view.xhtml?id=" + getResourceId();
- }
-
- private Configuration getMergedConfiguration() {
- for (RawConfiguration raw : getRawConfigDelegate().modified.values()) {
- getRaws().put(raw.getPath(), raw);
- log.error("Just merged in raw path =[" + raw.getPath() +
"]");
- log.error(" file =[" + new
String(raw.getContents()) + "]");
-
- }
- getConfiguration().getRawConfigurations().clear();
- getConfiguration().getRawConfigurations().addAll(getRaws().values());
- return getConfiguration();
- }
-
- public String discard() {
- nullify();
- return "/rhq/resource/configuration/view.xhtml?id=" + getResourceId();
- }
-
- public void fileUploadListener(UploadEvent event) throws Exception {
- File uploadFile;
- log.error("fileUploadListener called");
- uploadFile = event.getUploadItem().getFile();
- if (uploadFile != null) {
- log.debug("fileUploadListener got file named " +
event.getUploadItem().getFileName());
- log.debug("content type is " +
event.getUploadItem().getContentType());
- if (uploadFile != null) {
- try {
- FileReader fileReader = new FileReader(uploadFile);
- char[] buff = new char[1024];
- StringBuffer stringBuffer = new StringBuffer();
- for (int count = fileReader.read(buff); count != -1; count =
fileReader.read(buff)) {
- stringBuffer.append(buff, 0, count);
- }
- setCurrentContents(stringBuffer.toString());
- } catch (IOException e) {
- log.error("problem reading uploaded file", e);
- }
- }
- }
- }
-
- public int getConfigId() {
- return getConfiguration().getId();
- }
-
- public Configuration getConfiguration() {
- return getRawConfigDelegate().getConfiguration();
- }
-
- //TODO Sync this up with the baseclass
- public ConfigurationDefinition getConfigurationDefinition() {
- if (null == getRawConfigDelegate().configurationDefinition) {
-
- getRawConfigDelegate().configurationDefinition =
LookupUtil.getConfigurationManager()
-
.getResourceConfigurationDefinitionForResourceType(EnterpriseFacesContextUtility.getSubject(),
-
EnterpriseFacesContextUtility.getResource().getResourceType().getId());
- }
- return getRawConfigDelegate().configurationDefinition;
- }
-
- private ConfigurationFormat getConfigurationFormat() {
- if (useMock)
- return ConfigurationFormat.STRUCTURED_AND_RAW;
- return getConfigurationDefinition().getConfigurationFormat();
- }
-
- public RawConfiguration getCurrent() {
- if (null == getRawConfigDelegate().current) {
- Iterator<RawConfiguration> iterator = getRaws().values().iterator();
- if (iterator.hasNext()) {
- getRawConfigDelegate().current = iterator.next();
- } else {
- getRawConfigDelegate().current = new RawConfiguration();
- getRawConfigDelegate().current.setPath("/dev/null");
- getRawConfigDelegate().current.setContents("".getBytes());
- }
- }
- return getRawConfigDelegate().current;
- }
-
- public String getCurrentContents() {
- return new String(getCurrent().getContents());
- }
-
- public String getCurrentPath() {
- return getCurrent().getPath();
- }
-
- private RawConfigDelegateMap getDelegates() {
- return rawConfigDelegateMap;
- }
-
- public TreeMap<String, RawConfiguration> getModified() {
- if (getRawConfigDelegate().modified == null) {
- getRawConfigDelegate().modified = new TreeMap<String,
RawConfiguration>();
- }
- return getRawConfigDelegate().modified;
- }
-
- public Object[] getPaths() {
- return getRaws().keySet().toArray();
- }
-
- RawConfigDelegate getRawConfigDelegate() {
- if (null == rawConfigDelegate) {
- rawConfigDelegate = getDelegates().get(getResourceId());
- if (null == rawConfigDelegate) {
- rawConfigDelegate = new RawConfigDelegate(getResourceId());
- getDelegates().put(getResourceId(), rawConfigDelegate);
- }
- }
- return rawConfigDelegate;
- }
-
- public RawConfigDelegateMap getRawConfigDelegateMap() {
- return rawConfigDelegateMap;
- }
-
- public TreeMap<String, RawConfiguration> getRaws() {
- return getRawConfigDelegate().getRaws();
- }
-
- /**
- *
- * @return the id associated with the resource.
- * The value Cached in order to be available on the upload page,
- * where seeing the resource id conflicts with the rich upload tag.
- */
- public int getResourceId() {
- if (resourceId == null) {
- resourceId = EnterpriseFacesContextUtility.getResource().getId();
- }
- return resourceId;
- }
-
- /**
- * Hack Alert. This bean needs to be initialized on one of the pages that has id or
resourceId set
- * In order to capture the resource. It will then Keep track of that particular
resources until
- * commit is called. Ideally, this should be a conversation scoped bean, but that
has other issues
- *
- */
- @Create
- public void init() {
-
- }
-
- public boolean isModified(String path) {
- return getModified().keySet().contains(path);
- }
-
- public boolean isRawSupported() {
- return getConfigurationFormat().isRawSupported();
- }
-
- public boolean isStructuredSupported() {
- return getConfigurationFormat().isStructuredSupported();
- }
-
- void nullify() {
- getDelegates().remove(getResourceId());
- setRawConfigDelegate(null);
- }
-
- /**
- * Indicates which of the raw configuration files is currently selected.
- * @param s
- */
- public void select(String s) {
- getRawConfigDelegate().selectedPath = s;
- setCurrentPath(getRawConfigDelegate().selectedPath);
- }
-
- public void setCurrentContents(String updated) {
-
- String original = new String(getCurrent().getContents());
- if (!updated.equals(original)) {
- getRawConfigDelegate().current =
getRawConfigDelegate().current.deepCopy(false);
- getRawConfigDelegate().current.setContents(updated.getBytes());
- //TODO update other values like MD5
- getModified().put(getRawConfigDelegate().current.getPath(),
getRawConfigDelegate().current);
- }
- }
-
- public void setCurrentPath(String path) {
- RawConfiguration raw = getModified().get(path);
- if (null == raw) {
- raw = getRaws().get(path);
- }
- if (null != raw) {
- getRawConfigDelegate().current = raw;
- }
- }
-
- void setDelegates(RawConfigDelegateMap delegates) {
- this.rawConfigDelegateMap = delegates;
- }
-
- public void setModified(RawConfiguration raw) {
- getRawConfigDelegate().modified.put(raw.getPath(), raw);
- }
-
- void setRawConfigDelegate(RawConfigDelegate rawConfigDelegate) {
- this.rawConfigDelegate = rawConfigDelegate;
- }
-
- @In(create = true, required = true)
- public void setRawConfigDelegateMap(RawConfigDelegateMap rawConfigDelegateMap) {
- this.rawConfigDelegateMap = rawConfigDelegateMap;
- }
-
- /**
- * This is a no-op, since the upload work was done by upload file
- * But is kept as a target for the "save" icon from the full screen page
- */
- public String update() {
- return "/rhq/resource/configuration/edit-raw.xhtml?currentResourceId="
+ getResourceId();
- }
-
- /**
- * This is a no-op, since the upload work was done by upload file
- * But is kept as a target for the "action" value
- */
- public String upload() {
- return "/rhq/resource/configuration/edit-raw.xhtml?currentResourceId="
+ getResourceId();
- }
-
- public String switchToraw() {
- log.error("switch2raw called");
- dumpProperties(getConfiguration(), log);
- Configuration configuration =
LookupUtil.getConfigurationManager().translateResourceConfiguration(
- EnterpriseFacesContextUtility.getSubject(), getResourceId(),
getMergedConfiguration(), true);
- log.error("switch2raw post merge");
- dumpProperties(getConfiguration(), log);
-
- getRawConfigDelegate().setConfiguration(configuration);
- for (RawConfiguration raw : configuration.getRawConfigurations()) {
- getRawConfigDelegate().getRaws().put(raw.getPath(), raw);
- }
- getRawConfigDelegate().current = null;
- getRawConfigDelegate().setConfiguration(configuration);
- getRawConfigDelegateMap().put(getResourceId(), getRawConfigDelegate());
-
- return "/rhq/resource/configuration/edit-raw.xhtml?currentResourceId="
+ getResourceId();
- }
-
- void dumpProperties(Configuration conf, Log log) {
- for (String key : conf.getAllProperties().keySet()) {
- log.error("property=" + conf.getAllProperties().get(key));
- }
- }
-
- public String switchTostructured() {
- log.error("switch2structured called");
-
- dumpProperties(getConfiguration(), log);
- Configuration configuration =
LookupUtil.getConfigurationManager().translateResourceConfiguration(
- EnterpriseFacesContextUtility.getSubject(), getResourceId(),
getMergedConfiguration(), false);
- log.error("switch2structured post merge");
-
- dumpProperties(configuration, log);
-
- for (Property property : configuration.getAllProperties().values()) {
- property.setConfiguration(configuration);
- }
-
- for (RawConfiguration raw : configuration.getRawConfigurations()) {
- getRawConfigDelegate().getRaws().put(raw.getPath(), raw);
- getRawConfigDelegate().setConfiguration(configuration);
- }
- getRawConfigDelegate().current = null;
- getRawConfigDelegate().setConfiguration(configuration);
-
- return "/rhq/resource/configuration/edit.xhtml?currentResourceId=" +
getResourceId();
- }
-
- @Override
- protected int getConfigurationDefinitionKey() {
- // TODO Auto-generated method stub
- return 0;
- }
-
- @Override
- protected int getConfigurationKey() {
- // TODO Auto-generated method stub
- return 0;
- }
-
- @Override
- protected Configuration lookupConfiguration() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- protected ConfigurationDefinition lookupConfigurationDefinition() {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigDelegate.java
b/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigDelegate.java
deleted file mode 100644
index d049f35..0000000
---
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigDelegate.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * RHQ Management Platform
- * Copyright (C) 2005-2009 Red Hat, Inc.
- * All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-package org.rhq.enterprise.gui.configuration.resource;
-
-import java.io.Serializable;
-import java.util.Collection;
-import java.util.TreeMap;
-
-import org.rhq.core.domain.auth.Subject;
-import org.rhq.core.domain.configuration.AbstractResourceConfigurationUpdate;
-import org.rhq.core.domain.configuration.Configuration;
-import org.rhq.core.domain.configuration.RawConfiguration;
-import org.rhq.core.domain.configuration.definition.ConfigurationDefinition;
-import org.rhq.enterprise.gui.util.EnterpriseFacesContextUtility;
-import org.rhq.enterprise.server.util.LookupUtil;
-
-public class RawConfigDelegate implements Serializable {
-
- void populateRaws() {
- Collection<RawConfiguration> rawConfigurations =
LookupUtil.getConfigurationManager()
-
.getLatestResourceConfigurationUpdate(EnterpriseFacesContextUtility.getSubject(),
resourceId)
- .getConfiguration().getRawConfigurations();
-
- for (RawConfiguration raw : rawConfigurations) {
- raws.put(raw.getPath(), raw);
- }
- }
-
- public RawConfigDelegate(int resourceId) {
- super();
- this.resourceId = resourceId;
- }
-
- public void setRaws(TreeMap<String, RawConfiguration> raws) {
- this.raws = raws;
- }
-
- public TreeMap<String, RawConfiguration> getRaws() {
-
- if (null == raws) {
- raws = new TreeMap<String, RawConfiguration>();
- populateRaws();
- }
-
- return raws;
- }
-
- public void setConfiguration(Configuration configuration) {
- this.configuration = configuration;
- }
-
- public Configuration getConfiguration() {
- if (null == configuration) {
-
- Subject subject = EnterpriseFacesContextUtility.getSubject();
- int resourceId = EnterpriseFacesContextUtility.getResource().getId();
- AbstractResourceConfigurationUpdate configurationUpdate =
LookupUtil.getConfigurationManager()
- .getLatestResourceConfigurationUpdate(subject, resourceId);
- Configuration configuration = (configurationUpdate != null) ?
configurationUpdate.getConfiguration() : null;
- if (configuration != null) {
- //ConfigurationMaskingUtility.maskConfiguration(configuration,
getConfigurationDefinition());
- }
-
- return configuration;
-
- }
- return configuration;
- }
-
- /**
- *
- */
- private static final long serialVersionUID = -9058700205958371765L;
-
- int resourceId = 0;
- String selectedPath;
- private TreeMap<String, RawConfiguration> raws;
- TreeMap<String, RawConfiguration> modified = new TreeMap<String,
RawConfiguration>();
- RawConfiguration current = null;
- ConfigurationDefinition configurationDefinition = null;
- private Configuration configuration;
-
-}
\ No newline at end of file
diff --git
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigDelegateMap.java
b/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigDelegateMap.java
deleted file mode 100644
index 44b79b7..0000000
---
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/configuration/resource/RawConfigDelegateMap.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * RHQ Management Platform
- * Copyright (C) 2005-2009 Red Hat, Inc.
- * All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-package org.rhq.enterprise.gui.configuration.resource;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.jboss.seam.ScopeType;
-import org.jboss.seam.annotations.Name;
-import org.jboss.seam.annotations.Scope;
-
-@Name("rawConfigDelegateMap")
-(a)Scope(ScopeType.SESSION)
-public class RawConfigDelegateMap extends HashMap<Integer, RawConfigDelegate> {
-
- /**
- *
- */
- private static final long serialVersionUID = 941352750819758987L;
-
- public RawConfigDelegateMap() {
- super();
- // TODO Auto-generated constructor stub
- }
-
- public RawConfigDelegateMap(int initialCapacity, float loadFactor) {
- super(initialCapacity, loadFactor);
- // TODO Auto-generated constructor stub
- }
-
- public RawConfigDelegateMap(int initialCapacity) {
- super(initialCapacity);
- // TODO Auto-generated constructor stub
- }
-
- public RawConfigDelegateMap(Map<? extends Integer, ? extends RawConfigDelegate>
m) {
- super(m);
- // TODO Auto-generated constructor stub
- }
-
-}
\ No newline at end of file
diff --git
a/modules/enterprise/gui/portal-war/src/main/webapp/WEB-INF/jsf-managed-beans/configuration-beans.xml
b/modules/enterprise/gui/portal-war/src/main/webapp/WEB-INF/jsf-managed-beans/configuration-beans.xml
index de0dace..70d3f99 100644
---
a/modules/enterprise/gui/portal-war/src/main/webapp/WEB-INF/jsf-managed-beans/configuration-beans.xml
+++
b/modules/enterprise/gui/portal-war/src/main/webapp/WEB-INF/jsf-managed-beans/configuration-beans.xml
@@ -4,19 +4,19 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd">
- <!-- /rhq/resource/configuration/view.xhtml,
/rhq/resource/configuration/view-map.xhtml
+ <!-- /rhq/resource/configuration/view.xhtml,
/rhq/resource/configuration/view-map.xhtml -->
<managed-bean>
<managed-bean-name>ExistingResourceConfigurationViewUIBean</managed-bean-name>
<managed-bean-class>org.rhq.enterprise.gui.configuration.resource.ExistingResourceConfigurationUIBean</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
- </managed-bean> -->
+ </managed-bean>
<!-- /rhq/resource/configuration/history.xhtml,
/rhq/resource/configuration/edit.xhtml, and
- /rhq/resource/configuration/edit-map.xhtml
+ /rhq/resource/configuration/edit-map.xhtml -->
<managed-bean>
<managed-bean-name>ExistingResourceConfigurationUIBean</managed-bean-name>
<managed-bean-class>org.rhq.enterprise.gui.configuration.resource.ExistingResourceConfigurationUIBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
- </managed-bean> -->
+ </managed-bean>
<!-- /rhq/resource/configuration/add-new-simple.xhtml -->
<managed-bean>
diff --git
a/modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/edit-raw.xhtml
b/modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/edit-raw.xhtml
index 4bbb24f..060dfc4 100644
---
a/modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/edit-raw.xhtml
+++
b/modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/edit-raw.xhtml
@@ -35,9 +35,9 @@
<a4j:form id="editResourceConfigurationForm">
<h:outputText value="#{messages.youareviewingraw}" />
- <h:panelGroup rendered="#{rawConfigCollection.structuredSupported}">
+ <h:panelGroup
rendered="#{ExistingResourceConfigurationUIBean.structuredSupported}">
<h:outputText value=" #{messages.switch2}" />
- <h:commandLink action="#{rawConfigCollection.switchTostructured}">
+ <h:commandLink
action="#{ExistingResourceConfigurationUIBean.switchTostructured}">
<s:conversationId />
<f:param name="id" value="#{ResourceUIBean.id}" />
<h:outputText value=" #{messages.structured}" />
@@ -53,23 +53,23 @@
<h:panelGroup
id="changedFiles" layout="vertical">
- <ui:repeat value="#{rawConfigCollection.paths}"
var="path">
+ <ui:repeat value="#{ExistingResourceConfigurationUIBean.paths}"
var="path">
<div><h:outputText value="*"
- rendered="#{rawConfigCollection.isModified(path) }" />
<h:commandLink
- value="#{path}" action="#{rawConfigCollection.select(path)}"
- rendered="#{path != rawConfigCollection.current.path}">
+ rendered="#{ExistingResourceConfigurationUIBean.isModified(path) }"
/> <h:commandLink
+ value="#{path}"
action="#{ExistingResourceConfigurationUIBean.select(path)}"
+ rendered="#{path !=
ExistingResourceConfigurationUIBean.current.path}">
<f:param name="currentPath" value="#{path}" />
</h:commandLink> <h:outputText value="#{path}"
- rendered="#{path == rawConfigCollection.current.path}"
/></div>
+ rendered="#{path == ExistingResourceConfigurationUIBean.current.path}"
/></div>
</ui:repeat>
</h:panelGroup>
<div>______________________________________</div>
<div>* <h:outputText value="#{messages.uncommitted}"
/></div>
<h:panelGrid columns="2" styleClass="buttons-table"
columnClasses="button-cell">
- <a4j:commandButton action="#{rawConfigCollection.commit}"
+ <a4j:commandButton
action="#{ExistingResourceConfigurationUIBean.commit}"
value="#{messages.commit}" reRender="changedFiles"
styleClass="buttonmed"/>
<a4j:commandButton
- action="#{rawConfigCollection.discard}"
value="#{messages.discard}"
+ action="#{ExistingResourceConfigurationUIBean.discard}"
value="#{messages.discard}"
reRender="changedFiles" styleClass="buttonmed"/>
</h:panelGrid>
</td>
@@ -77,7 +77,7 @@
<div>
<h:outputText value="#{messages.currentfile}" />
: <h:outputText
- value="#{rawConfigCollection.current.path}"
styleClass="outhello" />
+ value="#{ExistingResourceConfigurationUIBean.current.path}"
styleClass="outhello" />
</div>
<h:outputLink value="edit-raw-full.xhtml"
action="navigateToFullScreen">
<img src="/images/viewfullscreen.png" />
@@ -96,7 +96,7 @@
</s:link>
<div><h:inputTextarea cols="80" rows="40"
- value="#{rawConfigCollection.currentContents}" /></div>
+ value="#{ExistingResourceConfigurationUIBean.currentContents}"
/></div>
</td>
</tr>
diff --git
a/modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/edit.xhtml
b/modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/edit.xhtml
index b28ade4..d067d8a 100644
---
a/modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/edit.xhtml
+++
b/modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/edit.xhtml
@@ -30,9 +30,9 @@ THIS TEXT WILL BE REMOVED.
<h:outputText value="#{messages.youareviewingstructured}" />
- <h:panelGroup rendered="#{rawConfigCollection.rawSupported}" >
+ <h:panelGroup
rendered="#{ExistingResourceConfigurationUIBean.rawSupported}" >
<h:outputText value=" #{messages.switch2}" />
- <h:commandLink action="#{rawConfigCollection.switchToraw}" >
+ <h:commandLink
action="#{ExistingResourceConfigurationUIBean.switchToraw}" >
<f:param name="conversationId"
value="#{conversation.id}"/>
<f:param name="id" value="#{ResourceUIBean.id}"/>
<h:outputText value=" files mode"/>
diff --git
a/modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/view-raw.xhtml
b/modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/view-raw.xhtml
index 65ac139..b0b3002 100644
---
a/modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/view-raw.xhtml
+++
b/modules/enterprise/gui/portal-war/src/main/webapp/rhq/resource/configuration/view-raw.xhtml
@@ -34,7 +34,7 @@
</script>
<h:outputText value="#{messages.youareviewingraw}" />
- <h:panelGroup rendered="#{rawConfigCollection.structuredSupported}">
+ <h:panelGroup
rendered="#{ExistingResourceConfigurationViewUIBean.structuredSupported}">
<h:outputText value=" #{messages.switch2}" />
<h:outputLink value="view.xhtml">
<s:conversationId />
@@ -53,10 +53,10 @@
<h:commandButton value="#{messages.editstructured}"
action="#{ExistingResourceConfigurationUIBean.editConfiguration}"
title="Edit this Configuration"
styleClass="buttonmed"
- rendered="${ResourceUIBean.permissions.configure and
rawConfigCollection.structuredSupported and
!ExistingResourceConfigurationUIBean.updateInProgress}" />
+ rendered="${ResourceUIBean.permissions.configure and
ExistingResourceConfigurationViewUIBean.structuredSupported and
!ExistingResourceConfigurationUIBean.updateInProgress}" />
<h:commandButton value="#{messages.editraw}"
action="#{ExistingResourceConfigurationUIBean.editRawConfiguration}"
title="Advanced Mode Edit of Raw Configuration
Files" styleClass="buttonmed"
- rendered="${ResourceUIBean.permissions.configure and
rawConfigCollection.rawSupported and
!ExistingResourceConfigurationUIBean.updateInProgress}" />
+ rendered="${ResourceUIBean.permissions.configure and
ExistingResourceConfigurationViewUIBean.rawSupported and
!ExistingResourceConfigurationUIBean.updateInProgress}" />
</h:panelGrid>
diff --git
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/configuration/ConfigurationManagerBean.java
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/configuration/ConfigurationManagerBean.java
index 36f35c0..caecff7 100644
---
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/configuration/ConfigurationManagerBean.java
+++
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/configuration/ConfigurationManagerBean.java
@@ -20,12 +20,12 @@ package org.rhq.enterprise.server.configuration;
import java.util.ArrayList;
import java.util.Calendar;
+import java.util.Collection;
+import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
-import java.util.Collections;
-import java.util.Collection;
import javax.ejb.EJB;
import javax.ejb.Stateless;
@@ -48,9 +48,9 @@ import org.quartz.JobDetail;
import org.quartz.SchedulerException;
import org.quartz.Trigger;
-import org.rhq.core.clientapi.agent.configuration.ConfigurationUpdateRequest;
-import org.rhq.core.clientapi.agent.configuration.ConfigurationAgentService;
import org.rhq.core.clientapi.agent.PluginContainerException;
+import org.rhq.core.clientapi.agent.configuration.ConfigurationAgentService;
+import org.rhq.core.clientapi.agent.configuration.ConfigurationUpdateRequest;
import org.rhq.core.clientapi.server.configuration.ConfigurationUpdateResponse;
import org.rhq.core.domain.auth.Subject;
import org.rhq.core.domain.authz.Permission;
@@ -59,8 +59,8 @@ import org.rhq.core.domain.configuration.Configuration;
import org.rhq.core.domain.configuration.ConfigurationUpdateStatus;
import org.rhq.core.domain.configuration.PluginConfigurationUpdate;
import org.rhq.core.domain.configuration.Property;
-import org.rhq.core.domain.configuration.ResourceConfigurationUpdate;
import org.rhq.core.domain.configuration.RawConfiguration;
+import org.rhq.core.domain.configuration.ResourceConfigurationUpdate;
import org.rhq.core.domain.configuration.composite.ConfigurationUpdateComposite;
import org.rhq.core.domain.configuration.definition.ConfigurationDefinition;
import org.rhq.core.domain.configuration.group.AbstractGroupConfigurationUpdate;
@@ -702,7 +702,7 @@ public class ConfigurationManagerBean implements
ConfigurationManagerLocal, Conf
}
public Configuration getLiveResourceConfiguration(Subject subject, int resourceId,
boolean pingAgentFirst,
- boolean fromStructured) throws Exception {
+ boolean fromStructured) throws Exception {
Resource resource = entityManager.find(Resource.class, resourceId);
if (resource == null) {
@@ -980,6 +980,12 @@ public class ConfigurationManagerBean implements
ConfigurationManagerLocal, Conf
return;
}
+ private void dumpProperties(Configuration configuration) {
+ for (String key : configuration.getAllProperties().keySet()) {
+ log.error("key = ");
+ }
+ }
+
@Nullable
public ResourceConfigurationUpdate updateResourceConfiguration(Subject subject, int
resourceId,
@XmlJavaTypeAdapter(ConfigurationAdapter.class) Configuration newConfiguration)
@@ -988,7 +994,7 @@ public class ConfigurationManagerBean implements
ConfigurationManagerLocal, Conf
// (consider synchronizing to avoid the condition where someone calls this method
twice quickly
// in two different txs which would put two updates in INPROGRESS and cause
havoc)
ResourceConfigurationUpdate newUpdate;
-
+ dumpProperties(newConfiguration);
// here we call ourself, but we do so via the EJB interface so we pick up the
REQUIRES_NEW semantics
// this can return null if newConfiguration is not actually different.
newUpdate =
configurationManager.persistNewResourceConfigurationUpdateHistory(subject, resourceId,
@@ -1321,8 +1327,7 @@ public class ConfigurationManagerBean implements
ConfigurationManagerLocal, Conf
*
* @return the resource's live configuration or <code>null</code> if
it could not be retrieved from the agent
*/
- private Configuration getLiveResourceConfiguration(Resource resource, boolean
pingAgentFirst,
- boolean fromStructured) {
+ private Configuration getLiveResourceConfiguration(Resource resource, boolean
pingAgentFirst, boolean fromStructured) {
Configuration liveConfig = null;
try {
@@ -1355,8 +1360,6 @@ public class ConfigurationManagerBean implements
ConfigurationManagerLocal, Conf
return liveConfig;
}
-
-
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
public AbstractResourceConfigurationUpdate mergeConfigurationUpdate(
AbstractResourceConfigurationUpdate configurationUpdate) {
@@ -1900,11 +1903,10 @@ public class ConfigurationManagerBean implements
ConfigurationManagerLocal, Conf
ConfigurationAgentService configService =
agentClient.getConfigurationAgentService();
return configService.merge(configuration, resourceId, fromStructured);
- }
- catch (PluginContainerException e) {
+ } catch (PluginContainerException e) {
log.error("An error occurred while trying to translate the
configuration.", e);
return null;
}
}
-
+
}