[rhq] modules/enterprise
by mazz
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDataStep.java | 12 +++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
New commits:
commit e5003d37187cd75b7fa731824257003c082680b7
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Mon Dec 20 13:21:44 2010 -0500
BZ 616422 - the previous button now works. was hitting a NPE that we now protect against
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDataStep.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDataStep.java
index 6b90111..0423952 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDataStep.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDataStep.java
@@ -98,11 +98,13 @@ public class BundleUploadDataStep extends AbstractWizardStep {
public boolean previousPage() {
wizard.getView().hideMessage();
- for (BundleFileUploadForm uploadForm : this.uploadForms) {
- if (uploadForm.isUploadInProgress()) {
- handleUploadError("[" + uploadForm.getName() + "] " + MSG.view_bundle_createWizard_uploadInProgress(),
- false);
- return false;
+ if (this.uploadForms != null) {
+ for (BundleFileUploadForm uploadForm : this.uploadForms) {
+ if (uploadForm.isUploadInProgress()) {
+ handleUploadError("[" + uploadForm.getName() + "] "
+ + MSG.view_bundle_createWizard_uploadInProgress(), false);
+ return false;
+ }
}
}
13 years, 5 months
[rhq] 2 commits - modules/enterprise
by ips
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/OperationScheduleDataSource.java | 4
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/ResourceOperationScheduleDetailsView.java | 58 ++++++++--
modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/operation/OperationManagerBean.java | 5
3 files changed, 54 insertions(+), 13 deletions(-)
New commits:
commit 9dcbc0553d66f9c0031076aab6d4516cf1cd0565
Author: Ian Springer <ian.springer(a)redhat.com>
Date: Mon Dec 20 13:15:42 2010 -0500
more work on operation schedule detail view
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/OperationScheduleDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/OperationScheduleDataSource.java
index 1e0d4a8..8450214 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/OperationScheduleDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/OperationScheduleDataSource.java
@@ -77,7 +77,7 @@ public abstract class OperationScheduleDataSource<T extends OperationSchedule> e
idField.setCanEdit(false);
fields.add(idField);
- DataSourceTextField operationNameField = createTextField(Field.OPERATION_NAME, "Operation", null, 100, true);
+ DataSourceTextField operationNameField = createTextField(Field.OPERATION_NAME, "Operation Name", null, 100, true);
fields.add(operationNameField);
DataSourceTextField operationDisplayNameField = createTextField(Field.OPERATION_DISPLAY_NAME, "Operation", null, 100, true);
@@ -88,7 +88,7 @@ public abstract class OperationScheduleDataSource<T extends OperationSchedule> e
for (OperationDefinition operationDefinition : operationDefinitions) {
valueMap.put(operationDefinition.getName(), operationDefinition.getDisplayName());
}
- operationNameField.setValueMap(valueMap);
+ operationNameField.setValueMap(valueMap);
DataSourceTextField subjectField = createTextField(Field.SUBJECT, "Owner", null, 100, true);
subjectField.setCanEdit(false);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/ResourceOperationScheduleDetailsView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/ResourceOperationScheduleDetailsView.java
index 12df23e..263c3ae 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/ResourceOperationScheduleDetailsView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/ResourceOperationScheduleDetailsView.java
@@ -20,12 +20,20 @@
package org.rhq.enterprise.gui.coregui.client.inventory.common.detail.operation.schedule;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
+import java.util.Set;
import com.smartgwt.client.widgets.form.fields.FormItem;
import com.smartgwt.client.widgets.form.fields.SelectItem;
+import com.smartgwt.client.widgets.form.fields.StaticTextItem;
import com.smartgwt.client.widgets.form.fields.TextAreaItem;
+import com.smartgwt.client.widgets.form.fields.events.ChangedEvent;
+import com.smartgwt.client.widgets.form.fields.events.ChangedHandler;
+import org.rhq.core.domain.operation.OperationDefinition;
+import org.rhq.core.domain.resource.ResourceType;
import org.rhq.core.domain.resource.composite.ResourceComposite;
import org.rhq.enterprise.gui.coregui.client.ViewPath;
import org.rhq.enterprise.gui.coregui.client.components.form.AbstractRecordEditor;
@@ -37,8 +45,21 @@ import org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.operation
*/
public class ResourceOperationScheduleDetailsView extends AbstractRecordEditor {
+ private static final String FIELD_OPERATION_DESCRIPTION = "operationDescription";
+
+ private ResourceComposite resourceComposite;
+ private Map<String, String> operationNameToDescriptionMap = new HashMap<String, String>();
+ private SelectItem operationNameItem;
+ private StaticTextItem operationDescriptionItem;
+
public ResourceOperationScheduleDetailsView(String locatorId, ResourceComposite resourceComposite, int scheduleId) {
super(locatorId, new ResourceOperationScheduleDataSource(resourceComposite), scheduleId, "Scheduled Operation", null);
+ this.resourceComposite = resourceComposite;
+ ResourceType resourceType = this.resourceComposite.getResource().getResourceType();
+ Set<OperationDefinition> operationDefinitions = resourceType.getOperationDefinitions();
+ for (OperationDefinition operationDefinition : operationDefinitions) {
+ this.operationNameToDescriptionMap.put(operationDefinition.getName(), operationDefinition.getDescription());
+ }
}
@Override
@@ -54,19 +75,44 @@ public class ResourceOperationScheduleDetailsView extends AbstractRecordEditor {
protected List<FormItem> createFormItems(EnhancedDynamicForm form) {
List<FormItem> items = new ArrayList<FormItem>();
- SelectItem operationNameItem = new SelectItem(ResourceOperationScheduleDataSource.Field.OPERATION_NAME);
- items.add(operationNameItem);
+ this.operationNameItem = new SelectItem(ResourceOperationScheduleDataSource.Field.OPERATION_NAME);
+ items.add(this.operationNameItem);
+ this.operationNameItem.addChangedHandler(new ChangedHandler() {
+ public void onChanged(ChangedEvent event) {
+ updateOperationDescriptionItem();
+ }
+ });
+
+ this.operationDescriptionItem = new StaticTextItem(FIELD_OPERATION_DESCRIPTION, "Operation Description");
+ items.add(this.operationDescriptionItem);
- TextAreaItem descriptionItem = new TextAreaItem(ResourceOperationScheduleDataSource.Field.DESCRIPTION);
- descriptionItem.setColSpan(form.getNumCols());
- items.add(descriptionItem);
+ TextAreaItem notesItem = new TextAreaItem(ResourceOperationScheduleDataSource.Field.DESCRIPTION, "Notes");
+ notesItem.setColSpan(form.getNumCols());
+ items.add(notesItem);
return items;
}
@Override
+ protected void onDraw() {
+ super.onDraw();
+ updateOperationDescriptionItem();
+ }
+
+ @Override
protected String getTitleFieldName() {
return ResourceOperationScheduleDataSource.Field.OPERATION_DISPLAY_NAME;
}
-
+
+ private void updateOperationDescriptionItem() {
+ String operationName = this.operationNameItem.getValueAsString();
+ String value;
+ if (operationName == null) {
+ value = "<i>Select an operation to view its description.</i>";
+ } else {
+ value = this.operationNameToDescriptionMap.get(operationName);
+ }
+ this.operationDescriptionItem.setValue(value);
+ }
+
}
commit 8a242842c5e41f945cc3e0da64365b0a74fe5f6b
Author: Ian Springer <ian.springer(a)redhat.com>
Date: Mon Dec 20 10:51:59 2010 -0500
remove some faulty code that was trying to lookup an OperationScheduleEntity by its old primary key (https://bugzilla.redhat.com/show_bug.cgi?id=664350)
diff --git a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/operation/OperationManagerBean.java b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/operation/OperationManagerBean.java
index 5d62695..b54dc27 100644
--- a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/operation/OperationManagerBean.java
+++ b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/operation/OperationManagerBean.java
@@ -1356,7 +1356,6 @@ public class OperationManagerBean implements OperationManagerLocal, OperationMan
* the time this group operation was kicked off), the group operation was a success by definition
*/
groupHistory.setStatus(OperationRequestStatus.SUCCESS);
- continue;
}
} catch (Throwable t) {
LOG.warn("Failed to check for memberless group operations. Cause: " + t);
@@ -1794,7 +1793,6 @@ public class OperationManagerBean implements OperationManagerLocal, OperationMan
* @return a managed entity, attached to this bean's entity manager
*/
private OperationScheduleEntity findOperationScheduleEntity(ScheduleJobId jobId) {
- OperationScheduleEntity entity = entityManager.find(OperationScheduleEntity.class, jobId);
Query query = entityManager.createNamedQuery(OperationScheduleEntity.QUERY_FIND_BY_JOB_ID);
String jobName = jobId.getJobName();
query.setParameter("jobName", jobName);
@@ -1838,7 +1836,6 @@ public class OperationManagerBean implements OperationManagerLocal, OperationMan
public List<OperationDefinition> findOperationDefinitionsByCriteria(Subject subject,
OperationDefinitionCriteria criteria) {
CriteriaQueryGenerator generator = new CriteriaQueryGenerator(subject, criteria);
- ;
CriteriaQueryRunner<OperationDefinition> queryRunner = new CriteriaQueryRunner(criteria, generator,
entityManager);
@@ -1849,7 +1846,6 @@ public class OperationManagerBean implements OperationManagerLocal, OperationMan
public PageList<ResourceOperationHistory> findResourceOperationHistoriesByCriteria(Subject subject,
ResourceOperationHistoryCriteria criteria) {
CriteriaQueryGenerator generator = new CriteriaQueryGenerator(subject, criteria);
- ;
if (authorizationManager.isInventoryManager(subject) == false) {
generator.setAuthorizationResourceFragment(CriteriaQueryGenerator.AuthorizationTokenType.RESOURCE, subject
.getId());
@@ -1864,7 +1860,6 @@ public class OperationManagerBean implements OperationManagerLocal, OperationMan
public PageList<GroupOperationHistory> findGroupOperationHistoriesByCriteria(Subject subject,
GroupOperationHistoryCriteria criteria) {
CriteriaQueryGenerator generator = new CriteriaQueryGenerator(subject, criteria);
- ;
if (authorizationManager.isInventoryManager(subject) == false) {
generator.setAuthorizationResourceFragment(CriteriaQueryGenerator.AuthorizationTokenType.GROUP, subject
.getId());
13 years, 5 months
[rhq] modules/enterprise
by Joseph Marques
modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java | 39 +++-------
1 file changed, 14 insertions(+), 25 deletions(-)
New commits:
commit c49742d307ca90d6f27e92ecdb34396935b1fd1a
Author: Joseph Marques <joseph(a)redhat.com>
Date: Mon Dec 20 13:15:54 2010 -0500
use shorter innerAlias name to improve text-wrapping
diff --git a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java
index ecce694..dd6d556 100644
--- a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java
+++ b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java
@@ -192,51 +192,40 @@ public final class CriteriaQueryGenerator {
private String getEnhancedResourceAuthorizationWhereFragment(String fragment, int subjectId) {
String customAuthzFragment = "" //
- + "( %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id "
- + NL //
- + " FROM %alias% innerAlias "
- + NL //
- + " JOIN %innerAliasWithFragment%.implicitGroups g JOIN g.roles r JOIN r.subjects s "
- + NL //
+ + "( %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id " + NL //
+ + " FROM %alias% innerAlias " + NL //
+ + " JOIN %innerAlias%.implicitGroups g JOIN g.roles r JOIN r.subjects s " + NL //
+ " WHERE s.id = %subjectId% ) )" + NL; //
String aliasReplacement = criteria.getAlias() + (fragment != null ? "." + fragment : "");
String innerAliasReplacement = "innerAlias" + (fragment != null ? "." + fragment : "");
customAuthzFragment = customAuthzFragment.replace("%alias%", criteria.getAlias());
customAuthzFragment = customAuthzFragment.replace("%aliasWithFragment%", aliasReplacement);
- customAuthzFragment = customAuthzFragment.replace("%innerAliasWithFragment%", innerAliasReplacement);
+ customAuthzFragment = customAuthzFragment.replace("%innerAlias%", innerAliasReplacement);
customAuthzFragment = customAuthzFragment.replace("%subjectId%", String.valueOf(subjectId));
return customAuthzFragment;
}
private String getEnhancedGroupAuthorizationWhereFragment(String fragment, int subjectId) {
String customAuthzFragment = "" //
- + "( %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id "
- + NL //
- + " FROM %alias% innerAlias "
- + NL //
- + " JOIN %innerAliasWithFragment%.roles r JOIN r.subjects s "
- + NL //
- + " WHERE s.id = %subjectId% )"
- + NL //
- + " OR"
- + NL //
- + " %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id "
- + NL //
- + " FROM %alias% innerAlias "
- + NL //
- + " JOIN %innerAliasWithFragment%.clusterResourceGroup crg JOIN crg.roles r JOIN r.subjects s "
- + NL //
+ + "( %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id " + NL //
+ + " FROM %alias% innerAlias " + NL //
+ + " JOIN %innerAlias%.roles r JOIN r.subjects s " + NL //
+ + " WHERE s.id = %subjectId% )" + NL //
+ + " OR" + NL //
+ + " %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id " + NL //
+ + " FROM %alias% innerAlias " + NL //
+ + " JOIN %innerAlias%.clusterResourceGroup crg JOIN crg.roles r JOIN r.subjects s " + NL //
+ " WHERE crg.recursive = true AND s = %subjectId% )" + NL //
+ " OR" + NL //
+ " %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id" + NL //
+ " FROM %alias% innerAlias " + NL //
- + " JOIN %innerAliasWithFragment%.subject s" + NL //
+ + " JOIN %innerAlias%.subject s" + NL //
+ " WHERE s.id = %subjectId% ) ) " + NL;
String aliasReplacement = criteria.getAlias() + (fragment != null ? "." + fragment : "");
String innerAliasReplacement = "innerAlias" + (fragment != null ? "." + fragment : "");
customAuthzFragment = customAuthzFragment.replace("%alias%", criteria.getAlias());
customAuthzFragment = customAuthzFragment.replace("%aliasWithFragment%", aliasReplacement);
- customAuthzFragment = customAuthzFragment.replace("%innerAliasWithFragment%", innerAliasReplacement);
+ customAuthzFragment = customAuthzFragment.replace("%innerAlias%", innerAliasReplacement);
customAuthzFragment = customAuthzFragment.replace("%subjectId%", String.valueOf(subjectId));
return customAuthzFragment;
}
13 years, 5 months
[rhq] 2 commits - modules/enterprise
by Joseph Marques
modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java | 47 +++++-----
1 file changed, 26 insertions(+), 21 deletions(-)
New commits:
commit c720d98932c32174e0c3262eb7d9b6001372ccd4
Author: Joseph Marques <joseph(a)redhat.com>
Date: Mon Dec 20 13:09:05 2010 -0500
update CriteriaQueryGenerator logic to generate 'WHERE' term appropriately
* basically, whenever ANY type of parameter is set on either the
CriteriaQueryGenerator or the associated Criteria object, the 'WHERE'
token needs to be generated into the query.
diff --git a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java
index ecf896e..ecce694 100644
--- a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java
+++ b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java
@@ -192,9 +192,12 @@ public final class CriteriaQueryGenerator {
private String getEnhancedResourceAuthorizationWhereFragment(String fragment, int subjectId) {
String customAuthzFragment = "" //
- + "( %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id " + NL //
- + " FROM %alias% innerAlias " + NL //
- + " JOIN %innerAliasWithFragment%.implicitGroups g JOIN g.roles r JOIN r.subjects s " + NL //
+ + "( %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id "
+ + NL //
+ + " FROM %alias% innerAlias "
+ + NL //
+ + " JOIN %innerAliasWithFragment%.implicitGroups g JOIN g.roles r JOIN r.subjects s "
+ + NL //
+ " WHERE s.id = %subjectId% ) )" + NL; //
String aliasReplacement = criteria.getAlias() + (fragment != null ? "." + fragment : "");
String innerAliasReplacement = "innerAlias" + (fragment != null ? "." + fragment : "");
@@ -207,14 +210,22 @@ public final class CriteriaQueryGenerator {
private String getEnhancedGroupAuthorizationWhereFragment(String fragment, int subjectId) {
String customAuthzFragment = "" //
- + "( %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id " + NL //
- + " FROM %alias% innerAlias " + NL //
- + " JOIN %innerAliasWithFragment%.roles r JOIN r.subjects s " + NL //
- + " WHERE s.id = %subjectId% )" + NL //
- + " OR" + NL //
- + " %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id " + NL //
- + " FROM %alias% innerAlias " + NL //
- + " JOIN %innerAliasWithFragment%.clusterResourceGroup crg JOIN crg.roles r JOIN r.subjects s " + NL //
+ + "( %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id "
+ + NL //
+ + " FROM %alias% innerAlias "
+ + NL //
+ + " JOIN %innerAliasWithFragment%.roles r JOIN r.subjects s "
+ + NL //
+ + " WHERE s.id = %subjectId% )"
+ + NL //
+ + " OR"
+ + NL //
+ + " %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id "
+ + NL //
+ + " FROM %alias% innerAlias "
+ + NL //
+ + " JOIN %innerAliasWithFragment%.clusterResourceGroup crg JOIN crg.roles r JOIN r.subjects s "
+ + NL //
+ " WHERE crg.recursive = true AND s = %subjectId% )" + NL //
+ " OR" + NL //
+ " %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id" + NL //
@@ -415,7 +426,8 @@ public final class CriteriaQueryGenerator {
}
Map<String, Object> filterFields = getFilterFields(criteria);
- if (filterFields.size() > 0 || searchExpressionWhereClause != null) {
+ if (filterFields.size() > 0 || authorizationPermsFragment != null
+ || authorizationCustomConditionFragment != null || searchExpressionWhereClause != null) {
results.append("WHERE ");
}
commit 8cdb554a592f02748fb1da9d0a850eead7120b5b
Author: Joseph Marques <joseph(a)redhat.com>
Date: Mon Dec 20 13:03:46 2010 -0500
remove 'authorizationJoinFragment', it's no longer used
diff --git a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java
index afb1394..ecf896e 100644
--- a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java
+++ b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java
@@ -75,7 +75,6 @@ public final class CriteriaQueryGenerator {
private String searchExpressionWhereClause;
private Subject subject;
- private String authorizationJoinFragment;
private String authorizationPermsFragment;
private String authorizationCustomConditionFragment;
private int authorizationSubjectId;
@@ -356,9 +355,6 @@ public final class CriteriaQueryGenerator {
}
}
}
- if (authorizationJoinFragment != null) {
- results.append(authorizationJoinFragment);
- }
// figure out the 'LEFT JOIN's needed for 'ORDER BY' tokens
PageControl pc = getPageControl(criteria);
@@ -419,7 +415,7 @@ public final class CriteriaQueryGenerator {
}
Map<String, Object> filterFields = getFilterFields(criteria);
- if (filterFields.size() > 0 || authorizationJoinFragment != null || searchExpressionWhereClause != null) {
+ if (filterFields.size() > 0 || searchExpressionWhereClause != null) {
results.append("WHERE ");
}
@@ -463,17 +459,14 @@ public final class CriteriaQueryGenerator {
}
// authorization
- if (authorizationJoinFragment != null) {
+ if (authorizationPermsFragment != null) {
if (firstCrit) {
firstCrit = false;
} else {
// always want AND for security, regardless of conjunctiveFragment
results.append(NL).append(" AND ");
}
- results.append("authSubject.id = " + authorizationSubjectId + " ");
- if (null != this.authorizationPermsFragment) {
- results.append(this.authorizationPermsFragment + " ");
- }
+ results.append(this.authorizationPermsFragment + " ");
}
if (authorizationCustomConditionFragment != null) {
13 years, 5 months
[rhq] modules/enterprise
by mazz
modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/bundle/BundleManagerBean.java | 1 +
1 file changed, 1 insertion(+)
New commits:
commit ee2dbfd637f49f77e6dd3d4a0372b4591bee4a1b
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Mon Dec 20 12:51:28 2010 -0500
need to set the name of the user that did the deployment
diff --git a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/bundle/BundleManagerBean.java b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/bundle/BundleManagerBean.java
index 00fe978..b1f65cf 100644
--- a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/bundle/BundleManagerBean.java
+++ b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/bundle/BundleManagerBean.java
@@ -255,6 +255,7 @@ public class BundleManagerBean implements BundleManagerLocal, BundleManagerRemot
BundleDeployment deployment = new BundleDeployment(bundleVersion, bundleDestination, name);
deployment.setDescription(description);
deployment.setConfiguration(configuration);
+ deployment.setSubjectName(subject.getName());
entityManager.persist(deployment);
13 years, 5 months
[rhq] 2 commits - modules/enterprise
by Joseph Marques
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionListView.java | 2
modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java | 56 +++++-----
2 files changed, 32 insertions(+), 26 deletions(-)
New commits:
commit 29b93643a2f25a1a96db5d1ffb625c6aacf51c15
Author: Joseph Marques <joseph(a)redhat.com>
Date: Mon Dec 20 12:48:24 2010 -0500
fix CriteriaQueryGenerator authorization token fragments
* need to use correlated sub-queries instead of joins to remove duplicate
items in the result set. format for sub-queries may look odd, but are
required to get hibernate to swallow / translate them properly into sql.
diff --git a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java
index ea4cf62..afb1394 100644
--- a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java
+++ b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/util/CriteriaQueryGenerator.java
@@ -165,24 +165,9 @@ public final class CriteriaQueryGenerator {
public void setAuthorizationResourceFragment(AuthorizationTokenType type, String fragment, int subjectId) {
this.authorizationSubjectId = subjectId;
if (type == AuthorizationTokenType.RESOURCE) {
- if (fragment == null) {
- this.authorizationJoinFragment = "" //
- + "JOIN " + alias + ".implicitGroups authGroup " + NL //
- + "JOIN authGroup.roles authRole " + NL //
- + "JOIN authRole.subjects authSubject " + NL;
- } else {
- this.authorizationJoinFragment = "" //
- + "JOIN " + alias + "." + fragment + " authRes " + NL //
- + "JOIN authRes.implicitGroups authGroup " + NL //
- + "JOIN authGroup.roles authRole " + NL //
- + "JOIN authRole.subjects authSubject " + NL;
- }
+ setAuthorizationCustomConditionFragment(getEnhancedResourceAuthorizationWhereFragment(fragment, subjectId));
} else if (type == AuthorizationTokenType.GROUP) {
- /*
- * can no longer use JOIN-based filters for groups. need to support 3 completely separate authorization
- * chains: 1) role-based for groups, 2) role-based for containing cluster groups, 3) private groups.
- * so, we need to support group token authorization using a more complicated where-filter.
- */
+ // support for: 1) role-based for groups, 2) role-based for containing cluster groups, 3) private groups
setAuthorizationCustomConditionFragment(getEnhancedGroupAuthorizationWhereFragment(fragment, subjectId));
} else {
throw new IllegalArgumentException(this.getClass().getSimpleName()
@@ -206,21 +191,42 @@ public final class CriteriaQueryGenerator {
}
}
+ private String getEnhancedResourceAuthorizationWhereFragment(String fragment, int subjectId) {
+ String customAuthzFragment = "" //
+ + "( %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id " + NL //
+ + " FROM %alias% innerAlias " + NL //
+ + " JOIN %innerAliasWithFragment%.implicitGroups g JOIN g.roles r JOIN r.subjects s " + NL //
+ + " WHERE s.id = %subjectId% ) )" + NL; //
+ String aliasReplacement = criteria.getAlias() + (fragment != null ? "." + fragment : "");
+ String innerAliasReplacement = "innerAlias" + (fragment != null ? "." + fragment : "");
+ customAuthzFragment = customAuthzFragment.replace("%alias%", criteria.getAlias());
+ customAuthzFragment = customAuthzFragment.replace("%aliasWithFragment%", aliasReplacement);
+ customAuthzFragment = customAuthzFragment.replace("%innerAliasWithFragment%", innerAliasReplacement);
+ customAuthzFragment = customAuthzFragment.replace("%subjectId%", String.valueOf(subjectId));
+ return customAuthzFragment;
+ }
+
private String getEnhancedGroupAuthorizationWhereFragment(String fragment, int subjectId) {
String customAuthzFragment = "" //
- + "( %alias%.id IN ( SELECT %alias%.id " + NL //
- + " FROM %alias%.roles r JOIN r.subjects s " + NL //
+ + "( %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id " + NL //
+ + " FROM %alias% innerAlias " + NL //
+ + " JOIN %innerAliasWithFragment%.roles r JOIN r.subjects s " + NL //
+ " WHERE s.id = %subjectId% )" + NL //
+ " OR" + NL //
- + " %alias%.id IN ( SELECT %alias%.id " + NL //
- + " FROM %alias%.clusterResourceGroup crg JOIN crg.roles r JOIN r.subjects s " + NL //
+ + " %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id " + NL //
+ + " FROM %alias% innerAlias " + NL //
+ + " JOIN %innerAliasWithFragment%.clusterResourceGroup crg JOIN crg.roles r JOIN r.subjects s " + NL //
+ " WHERE crg.recursive = true AND s = %subjectId% )" + NL //
+ " OR" + NL //
- + " %alias%.id IN ( SELECT %alias%.id" + NL //
- + " FROM %alias%.subject s" + NL //
+ + " %aliasWithFragment%.id IN ( SELECT %aliasWithFragment%.id" + NL //
+ + " FROM %alias% innerAlias " + NL //
+ + " JOIN %innerAliasWithFragment%.subject s" + NL //
+ " WHERE s.id = %subjectId% ) ) " + NL;
- String aliasReplacement = (fragment != null ? fragment + "." : "") + criteria.getAlias();
- customAuthzFragment = customAuthzFragment.replace("%alias%", aliasReplacement);
+ String aliasReplacement = criteria.getAlias() + (fragment != null ? "." + fragment : "");
+ String innerAliasReplacement = "innerAlias" + (fragment != null ? "." + fragment : "");
+ customAuthzFragment = customAuthzFragment.replace("%alias%", criteria.getAlias());
+ customAuthzFragment = customAuthzFragment.replace("%aliasWithFragment%", aliasReplacement);
+ customAuthzFragment = customAuthzFragment.replace("%innerAliasWithFragment%", innerAliasReplacement);
customAuthzFragment = customAuthzFragment.replace("%subjectId%", String.valueOf(subjectId));
return customAuthzFragment;
}
commit 706432d9a020332f355c8e00681ce4537d84d222
Author: Joseph Marques <joseph(a)redhat.com>
Date: Mon Dec 20 10:54:20 2010 -0500
bump up timeout for deleting group definitions
* deletion of a group definition requires deleting all of its dynagroup
children, and this could be hundreds or a few thousands groups against
large inventories.
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionListView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionListView.java
index 0f5fe93..b73b43b 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionListView.java
@@ -100,7 +100,7 @@ public class GroupDefinitionListView extends TableSection {
TableActionEnablement.ANY) {
public void executeAction(ListGridRecord[] selection, Object actionValue) {
final int[] groupDefinitionIds = TableUtility.getIds(selection);
- ResourceGroupGWTServiceAsync groupManager = GWTServiceLookup.getResourceGroupService();
+ ResourceGroupGWTServiceAsync groupManager = GWTServiceLookup.getResourceGroupService(60000);
groupManager.deleteGroupDefinitions(groupDefinitionIds, new AsyncCallback<Void>() {
@Override
public void onSuccess(Void result) {
13 years, 5 months
[rhq] 2 commits - modules/enterprise
by mazz
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/BundleDeployWizard.java | 8 +++-----
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/GetDestinationStep.java | 5 ++---
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/ErrorHandler.java | 4 ++--
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties | 6 +++---
4 files changed, 10 insertions(+), 13 deletions(-)
New commits:
commit a1413c63be98976785d38dc15d0c922a8cc42974
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Mon Dec 20 12:40:40 2010 -0500
make the error messages more concise so they don't expand the message center unnecessarily large.
the popup message dialog will show the full exception details.
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/BundleDeployWizard.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/BundleDeployWizard.java
index 90e3ea7..f16a071 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/BundleDeployWizard.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/BundleDeployWizard.java
@@ -121,7 +121,7 @@ public class BundleDeployWizard extends AbstractBundleDeployWizard {
public void onFailure(Throwable caught) {
CoreGUI.getErrorHandler().handleError(
- MSG.view_bundle_deployWizard_error_1(caught.getMessage()), caught);
+ MSG.view_bundle_deployWizard_error_1(), caught);
}
});
}
@@ -130,8 +130,7 @@ public class BundleDeployWizard extends AbstractBundleDeployWizard {
public void onFailure(Throwable caught) {
// should not really get here
- CoreGUI.getErrorHandler().handleError(
- MSG.view_bundle_deployWizard_error_1(caught.getMessage()), caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_bundle_deployWizard_error_1(), caught);
deleteNewDestination();
}
});
@@ -151,8 +150,7 @@ public class BundleDeployWizard extends AbstractBundleDeployWizard {
}
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError(
- MSG.view_bundle_deployWizard_error_2(caught.getMessage()), caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_bundle_deployWizard_error_2(), caught);
}
});
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/GetDestinationStep.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/GetDestinationStep.java
index 78a9bf9..615f0ab 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/GetDestinationStep.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/GetDestinationStep.java
@@ -145,8 +145,7 @@ public class GetDestinationStep extends AbstractWizardStep {
}
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError(
- MSG.view_bundle_deployWizard_error_9(caught.getMessage()), caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_bundle_deployWizard_error_9(), caught);
// try anyway and potentially fail again from there
createDestination();
}
@@ -179,7 +178,7 @@ public class GetDestinationStep extends AbstractWizardStep {
public void onFailure(Throwable caught) {
String message = MSG.view_bundle_deployWizard_error_10();
wizard.getView().showMessage(message);
- CoreGUI.getErrorHandler().handleError(message + ": " + caught.getMessage(), caught);
+ CoreGUI.getErrorHandler().handleError(message, caught);
createInProgress = false;
wizard.getView().decrementStep();
}
diff --git a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
index d98386e..3ed25bb 100644
--- a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
+++ b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
@@ -1009,15 +1009,15 @@ view_bundle_deployWizard_destinationCreatedDetail_concise = You have created the
view_bundle_deployWizard_deploymentScheduled = Bundle Deployment Scheduled!
view_bundle_deployWizard_deploymentScheduledDetail = You have scheduled the bundle deployment [{0}] to the destination group [{1}]
view_bundle_deployWizard_deploymentScheduledDetail_concise = You have scheduled the bundle deployment
-view_bundle_deployWizard_error_1 = Failed to delete new deployment on Cancel: {0}
-view_bundle_deployWizard_error_2 = Failed to delete new destination on Cancel: {0}
+view_bundle_deployWizard_error_1 = Failed to delete new deployment on Cancel
+view_bundle_deployWizard_error_2 = Failed to delete new destination on Cancel
view_bundle_deployWizard_error_3 = Failed to Schedule Deployment!
view_bundle_deployWizard_error_4 = Failed to schedule deployment: {0}
view_bundle_deployWizard_error_5 = Failed to Create Deployment!
view_bundle_deployWizard_error_6 = Failed to create deployment: {0}
view_bundle_deployWizard_error_7 = Failed to get deployment name.
view_bundle_deployWizard_error_8 = You must select a valid resource group from the drop down
-view_bundle_deployWizard_error_9 = Failed to delete new destination in nextPage: [{0}]
+view_bundle_deployWizard_error_9 = Failed to delete new destination in nextPage
view_bundle_deployWizard_error_10 = Failed to create destination, it may already exist. (Note, for an existing destination deploy from the Destination view)
view_bundle_deployWizard_error_11 = Failed to find defined deployments.
view_bundle_deployWizard_error_12 = Failed to find defined bundles.
commit 09bd655026d0e4e136850d87ff987c9daa4126a5
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Mon Dec 20 12:38:50 2010 -0500
errors should be at the error level, not fatal. rarely is an error actually fatal (where the definition of fatal means the software probably cannot go on any longer and a restart is usually necessary)
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/ErrorHandler.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/ErrorHandler.java
index 52971d7..f464421 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/ErrorHandler.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/ErrorHandler.java
@@ -37,7 +37,7 @@ public class ErrorHandler {
}
public void handleError(String message, Throwable t) {
- Message errorMessage = new Message(message, t, Message.Severity.Fatal);
+ Message errorMessage = new Message(message, t, Message.Severity.Error);
CoreGUI.getMessageCenter().notify(errorMessage);
if (t != null) {
@@ -81,5 +81,5 @@ public class ErrorHandler {
return list.toArray(new String[list.size()]);
}
-
+
}
13 years, 5 months
[rhq] 3 commits - modules/enterprise
by mazz
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ImageManager.java | 4 ++
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/DeployStep.java | 19 +++++++---
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/GetDeploymentConfigStep.java | 2 -
3 files changed, 19 insertions(+), 6 deletions(-)
New commits:
commit 0716681d8453add414fe0acd4b705de75feb6ce7
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Mon Dec 20 12:19:59 2010 -0500
BZ 625198 - forgot to zero out the IDs in the default config
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/GetDeploymentConfigStep.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/GetDeploymentConfigStep.java
index 5c31961..736acba 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/GetDeploymentConfigStep.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/GetDeploymentConfigStep.java
@@ -64,7 +64,7 @@ public class GetDeploymentConfigStep extends AbstractWizardStep {
if (defaultTemplate == null) {
startingConfig = new Configuration();
} else {
- startingConfig = defaultTemplate.getConfiguration();
+ startingConfig = defaultTemplate.createConfiguration();
}
} else {
startingConfig = getNormalizedLiveConfig(configDef);
commit dffca6088e3b5e1b686bef0892e1bbb4082da523
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Mon Dec 20 12:18:34 2010 -0500
fix the loading icon
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ImageManager.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ImageManager.java
index bdc647a..576af53 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ImageManager.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ImageManager.java
@@ -23,6 +23,10 @@ public class ImageManager {
public static final String IMAGES_DIR = "images/";
+ public static String getLoadingIcon() {
+ return "ajax-loader.gif";
+ }
+
/**
* Returns a generic "upload" icon.
*/
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/DeployStep.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/DeployStep.java
index 1c9dca9..619cd3e 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/DeployStep.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/DeployStep.java
@@ -28,6 +28,7 @@ import com.smartgwt.client.widgets.layout.VLayout;
import org.rhq.core.domain.bundle.BundleDeployment;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
+import org.rhq.enterprise.gui.coregui.client.ImageManager;
import org.rhq.enterprise.gui.coregui.client.components.wizard.AbstractWizardStep;
import org.rhq.enterprise.gui.coregui.client.gwt.BundleGWTServiceAsync;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
@@ -62,7 +63,7 @@ public class DeployStep extends AbstractWizardStep {
canvas.setHeight100();
canvas.setAlign(Alignment.CENTER);
- final Img deployingImage = new Img("/images/status-bar.gif");
+ final Img deployingImage = new Img(ImageManager.getLoadingIcon());
deployingImage.setLayoutAlign(Alignment.CENTER);
deployingImage.setWidth(50);
deployingImage.setHeight(15);
commit 1e23b466af25ad9c62d26b3ac5048b6966b45784
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Mon Dec 20 11:54:56 2010 -0500
show concise error message along with details
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/DeployStep.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/DeployStep.java
index bdd818c..1c9dca9 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/DeployStep.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deploy/DeployStep.java
@@ -31,6 +31,7 @@ import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.components.wizard.AbstractWizardStep;
import org.rhq.enterprise.gui.coregui.client.gwt.BundleGWTServiceAsync;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
+import org.rhq.enterprise.gui.coregui.client.util.ErrorHandler;
import org.rhq.enterprise.gui.coregui.client.util.message.Message;
import org.rhq.enterprise.gui.coregui.client.util.message.Message.Severity;
import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableVLayout;
@@ -94,6 +95,7 @@ public class DeployStep extends AbstractWizardStep {
new Message(MSG.view_bundle_deployWizard_deploymentScheduledDetail_concise(),
MSG.view_bundle_deployWizard_deploymentScheduledDetail(result.getName(),
result.getDestination().getGroup().getName()), Severity.Info));
+ wizard.getView().hideMessage();
CoreGUI.refresh();
wizard.setNewDeployment(result);
}
@@ -101,8 +103,12 @@ public class DeployStep extends AbstractWizardStep {
public void onFailure(Throwable caught) {
deployingImage.setSrc("/images/status_error.gif");
deployingMessage.setText(MSG.view_bundle_deployWizard_error_3());
- CoreGUI.getErrorHandler().handleError(
- MSG.view_bundle_deployWizard_error_4(caught.getMessage()), caught);
+ String errMsg = MSG.view_bundle_deployWizard_error_4(ErrorHandler
+ .getAllMessages(caught));
+ wizard.getView().showMessage(errMsg);
+ Message msg = new Message(MSG.view_bundle_deployWizard_error_3(), errMsg,
+ Severity.Error);
+ CoreGUI.getMessageCenter().notify(msg);
}
});
}
@@ -110,8 +116,10 @@ public class DeployStep extends AbstractWizardStep {
public void onFailure(Throwable caught) {
deployingImage.setSrc("/images/status_error.gif");
deployingMessage.setText(MSG.view_bundle_deployWizard_error_5());
- CoreGUI.getErrorHandler().handleError(
- MSG.view_bundle_deployWizard_error_6(caught.getMessage()), caught);
+ String errMsg = MSG.view_bundle_deployWizard_error_6(ErrorHandler.getAllMessages(caught));
+ wizard.getView().showMessage(errMsg);
+ Message msg = new Message(MSG.view_bundle_deployWizard_error_5(), errMsg, Severity.Error);
+ CoreGUI.getMessageCenter().notify(msg);
}
});
}
13 years, 5 months
[rhq] modules/enterprise
by Heiko W. Rupp
modules/enterprise/server/jar/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
New commits:
commit 416e01daad0ff3fadefcfd260546d5f95285b848
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Mon Dec 20 15:15:06 2010 +0100
Availability3 never had its id set, so we can't compare it.
diff --git a/modules/enterprise/server/jar/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java b/modules/enterprise/server/jar/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java
index e59794a..37c5992 100644
--- a/modules/enterprise/server/jar/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java
+++ b/modules/enterprise/server/jar/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java
@@ -908,7 +908,9 @@ public class AvailabilityManagerTest extends AbstractEJB3Test {
avail = availabilityManager.getCurrentAvailabilityForResource(overlord, theResource.getId());
// should have returned availability3
- assert avail.getId() == availability3.getId();
+ // NOTE: availability3 never got an ID assigned, so we can't compare by id
+ // assert avail.getId() == availability3.getId();
+ assert avail.getStartTime().equals(availability3.getStartTime());
assert avail.getAvailabilityType() == availability3.getAvailabilityType();
assert Math.abs(avail.getStartTime().getTime() - availability3.getStartTime().getTime()) < 1000;
assert avail.getEndTime() == null;
13 years, 5 months
[rhq] Branch 'release-3.0.0' - modules/enterprise
by Heiko W. Rupp
modules/enterprise/server/jar/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java | 36 +++++++---
1 file changed, 27 insertions(+), 9 deletions(-)
New commits:
commit 3cea406d41eee0761f48b42344ee0d1a2dd628c7
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Mon Dec 20 18:04:04 2010 +0100
Enable tests again and pull over some fixes that have been issued on master already.
diff --git a/modules/enterprise/server/jar/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java b/modules/enterprise/server/jar/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java
index 4c0e5ef..f6448ea 100644
--- a/modules/enterprise/server/jar/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java
+++ b/modules/enterprise/server/jar/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java
@@ -55,7 +55,7 @@ import org.rhq.enterprise.server.util.LookupUtil;
* @author John Mazzitelli
*/
public class AvailabilityManagerTest extends AbstractEJB3Test {
- private static final boolean ENABLE_TESTS = false;
+ private static final boolean ENABLE_TESTS = true;
private static final AvailabilityType UP = AvailabilityType.UP;
private static final AvailabilityType DOWN = AvailabilityType.DOWN;
@@ -68,6 +68,7 @@ public class AvailabilityManagerTest extends AbstractEJB3Test {
private Agent theAgent;
private Resource theResource;
private ResourceType theResourceType;
+ private List<Resource> additionalResources;
private Availability availability1;
private Availability availability2;
private Availability availability3;
@@ -81,6 +82,7 @@ public class AvailabilityManagerTest extends AbstractEJB3Test {
this.resourceAvailabilityManager = LookupUtil.getResourceAvailabilityManager();
this.resourceManager = LookupUtil.getResourceManager();
this.overlord = LookupUtil.getSubjectManager().getOverlord();
+ additionalResources = new ArrayList<Resource>();
} catch (Throwable t) {
// Catch RuntimeExceptions and Errors and dump their stack trace, because Surefire will completely swallow them
// and throw a cryptic NPE (see http://jira.codehaus.org/browse/SUREFIRE-157)!
@@ -100,6 +102,19 @@ public class AvailabilityManagerTest extends AbstractEJB3Test {
theResource = null;
}
+ if (additionalResources!=null) {
+ getTransactionManager().begin();
+ EntityManager em = getEntityManager();
+
+ for (Resource res : additionalResources) {
+ Resource res2 = em.find(Resource.class, res.getId());
+ resourceManager.uninventoryResource(overlord, res2.getId());
+ resourceManager.uninventoryResourceAsyncWork(overlord, res2.getId());
+
+ }
+ getTransactionManager().commit();
+ }
+
if (theResourceType != null) {
getTransactionManager().begin();
EntityManager em = getEntityManager();
@@ -392,8 +407,8 @@ public class AvailabilityManagerTest extends AbstractEJB3Test {
commitAndClose(em);
em = null;
- // add a report that says the resource was up 10 minutes ago
- Availability avail = new Availability(theResource, new Date(System.currentTimeMillis() - 600000), UP);
+ // add a report that says the resource was up 20 minutes ago
+ Availability avail = new Availability(theResource, new Date(System.currentTimeMillis() - 12000000), UP);
AvailabilityReport report = new AvailabilityReport(false, theAgent.getName());
report.addAvailability(avail);
availabilityManager.mergeAvailabilityReport(report);
@@ -402,12 +417,12 @@ public class AvailabilityManagerTest extends AbstractEJB3Test {
// let's pretend we haven't heard from the agent in a few minutes
em = beginTx();
Agent agent = em.find(Agent.class, theAgent.getId());
- agent.setLastAvailabilityReport(System.currentTimeMillis() - (1000 * 60 * 6));
+ agent.setLastAvailabilityReport(System.currentTimeMillis() - (1000 * 60 * 18)); // 18 mins
commitAndClose(em);
em = null;
// the agent should be suspect and will be considered down
- LookupUtil.getAgentManager().checkForSuspectAgents();
+ LookupUtil.getAgentManager().checkForSuspectAgents(); // checks for 15 mins !!
AvailabilityType curAvail;
curAvail = availabilityManager.getCurrentAvailabilityTypeForResource(overlord, theResource.getId());
assert curAvail == AvailabilityType.DOWN : curAvail; // backfilled with "null" to mean "unknown"
@@ -484,7 +499,7 @@ public class AvailabilityManagerTest extends AbstractEJB3Test {
// let's pretend we haven't heard from the agent in a few minutes
em = beginTx();
Agent agent = em.find(Agent.class, theAgent.getId());
- agent.setLastAvailabilityReport(System.currentTimeMillis() - (1000 * 60 * 6));
+ agent.setLastAvailabilityReport(System.currentTimeMillis() - (1000 * 60 * 18)); // 18 mins
commitAndClose(em);
em = null;
@@ -516,7 +531,7 @@ public class AvailabilityManagerTest extends AbstractEJB3Test {
// let's again pretend we haven't heard from the agent in a few minutes
em = beginTx();
agent = em.find(Agent.class, theAgent.getId());
- agent.setLastAvailabilityReport(System.currentTimeMillis() - (1000 * 60 * 6));
+ agent.setLastAvailabilityReport(System.currentTimeMillis() - (1000 * 60 * 18));
commitAndClose(em);
em = null;
@@ -844,7 +859,9 @@ public class AvailabilityManagerTest extends AbstractEJB3Test {
avail = availabilityManager.getCurrentAvailabilityForResource(overlord, theResource.getId());
// should have returned availability3
- assert avail.getId() == availability3.getId();
+ // NOTE: availability3 never got an ID assigned, so we can't compare by id
+ // assert avail.getId() == availability3.getId();
+ assert avail.getStartTime().equals(availability3.getStartTime());
assert avail.getAvailabilityType() == availability3.getAvailabilityType();
assert Math.abs(avail.getStartTime().getTime() - availability3.getStartTime().getTime()) < 1000;
assert avail.getEndTime() == null;
@@ -1085,6 +1102,7 @@ public class AvailabilityManagerTest extends AbstractEJB3Test {
newResource.setAgent(theAgent);
parentResource.addChildResource(newResource);
em.persist(newResource);
+ additionalResources.add(newResource);
return newResource;
}
@@ -1137,7 +1155,7 @@ public class AvailabilityManagerTest extends AbstractEJB3Test {
/**
* Convenience method for persisting availability. Availability data can no longer be directly merged
- * by the EntityManager because it does not update the corresponding currentAvailability data on the
+ * by the EntityManager because it does not update the corresponding currentAvailability data on the
* Resource entity. This method will update the necessary objects for you.
*/
private void persistAvailability(Availability... availabilities) {
13 years, 5 months