use of com.sun.identity.console.policy.model.CachedPolicy in project OpenAM by OpenRock.
the class PolicyOpViewBeanBase method handleTblConditionsButtonDeleteRequest.
/**
* Handles delete condition request.
*
* @param event Request Invocation Event.
*/
public void handleTblConditionsButtonDeleteRequest(RequestInvocationEvent event) throws ModelControlException {
CCActionTable table = (CCActionTable) getChild(TBL_CONDITIONS);
table.restoreStateData();
try {
CachedPolicy cachedPolicy = getCachedPolicy();
Policy policy = cachedPolicy.getPolicy();
Integer[] selected = tblConditionsModel.getSelectedRows();
for (int i = 0; i < selected.length; i++) {
tblConditionsModel.setRowIndex(selected[i].intValue());
String conditionName = (String) tblConditionsModel.getValue(TBL_CONDITIONS_DATA_NAME);
policy.removeCondition(conditionName);
}
cachedPolicy.setPolicyModified(true);
populateConditionsTable();
forwardTo();
} catch (AMConsoleException e) {
debug.warning("PolicyOpViewBeanBase.handleTblConditionsButtonDeleteRequest", e);
redirectToStartURL();
}
}
use of com.sun.identity.console.policy.model.CachedPolicy in project OpenAM by OpenRock.
the class PolicyOpViewBeanBase method populateResponseProvidersTable.
protected void populateResponseProvidersTable() throws AMConsoleException {
tblResponseProvidersModel.clearAll();
CachedPolicy cachedPolicy = getCachedPolicy();
Policy policy = cachedPolicy.getPolicy();
Set responseProviderNames = policy.getResponseProviderNames();
if ((responseProviderNames != null) && !responseProviderNames.isEmpty()) {
PolicyModel model = (PolicyModel) getModel();
String realmName = (String) getPageSessionAttribute(AMAdminConstants.CURRENT_REALM);
Map localizedRespAttrTypeNames = model.getActiveResponseProviderTypes(realmName);
boolean firstEntry = true;
for (Iterator i = responseProviderNames.iterator(); i.hasNext(); ) {
if (firstEntry) {
firstEntry = false;
} else {
tblResponseProvidersModel.appendRow();
}
try {
String name = (String) i.next();
ResponseProvider provider = policy.getResponseProvider(name);
tblResponseProvidersModel.setValue(TBL_RESPONSE_ATTRIBUTES_DATA_NAME, name);
String respAttrTypeName = model.getResponseProviderTypeName(realmName, provider);
String displayName = (String) localizedRespAttrTypeNames.get(respAttrTypeName);
if (displayName == null) {
displayName = respAttrTypeName;
}
tblResponseProvidersModel.setValue(TBL_RESPONSE_ATTRIBUTES_DATA_TYPE, displayName);
tblResponseProvidersModel.setValue(TBL_RESPONSE_ATTRIBUTES_ACTION_HREF, stringToHex(name));
} catch (NameNotFoundException e) {
debug.warning("PolicyOpViewBeanBase.populateResponseProvidersTable", e);
}
}
}
}
use of com.sun.identity.console.policy.model.CachedPolicy in project OpenAM by OpenRock.
the class PolicyOpViewBeanBase method handleTblRulesEditLinkRequest.
/**
* Handles edit rule request.
*
* @param event Request Invocation Event.
*/
public void handleTblRulesEditLinkRequest(RequestInvocationEvent event) throws ModelControlException {
PolicyModel model = (PolicyModel) getModel();
String name = hexToString((String) getDisplayFieldValue(TBL_RULES_ACTION_HREF));
setPageSessionAttribute(RuleEditViewBean.CALLING_VIEW_BEAN, getClass().getName());
setPageSessionAttribute(RuleEditViewBean.EDIT_RULE_NAME, name);
try {
CachedPolicy cachedPolicy = getCachedPolicy();
Policy policy = cachedPolicy.getPolicy();
Rule rule = policy.getRule(name);
RuleEditViewBean vb = null;
String resName = rule.getResourceName();
if ((resName == null) || (resName.length() == 0)) {
vb = (RuleNoResourceEditViewBean) getViewBean(RuleNoResourceEditViewBean.class);
setPageSessionAttribute(RuleOpViewBeanBase.WITH_RESOURCE, Boolean.FALSE);
} else {
String realmName = (String) getPageSessionAttribute(AMAdminConstants.CURRENT_REALM);
String serviceType = rule.getServiceTypeName();
if (model.canCreateNewResource(realmName, serviceType)) {
vb = (RuleEditViewBean) getViewBean(RuleEditViewBean.class);
} else {
vb = (RuleEditViewBean) getViewBean(RuleWithPrefixEditViewBean.class);
}
setPageSessionAttribute(RuleOpViewBeanBase.WITH_RESOURCE, Boolean.TRUE);
}
unlockPageTrail();
passPgSessionMap(vb);
vb.forwardTo(getRequestContext());
} catch (NameNotFoundException e) {
setInlineAlertMessage(CCAlert.TYPE_ERROR, "message.error", getModel().getErrorString(e));
forwardTo();
} catch (AMConsoleException e) {
debug.warning("PolicyOpViewBeanBase.handleTblRulesEditLinkRequest", e);
redirectToStartURL();
}
}
use of com.sun.identity.console.policy.model.CachedPolicy in project OpenAM by OpenRock.
the class SelectTypeViewBeanBase method getCachedPolicy.
protected CachedPolicy getCachedPolicy() throws AMConsoleException {
CachedPolicy policy = null;
String cacheID = (String) getPageSessionAttribute(ProfileViewBeanBase.PG_SESSION_POLICY_CACHE_ID);
if (cacheID != null) {
PolicyModel model = (PolicyModel) getModel();
policy = model.getCachedPolicy(cacheID);
}
return policy;
}
use of com.sun.identity.console.policy.model.CachedPolicy in project OpenAM by OpenRock.
the class RuleAddViewBean method handleButton2Request.
/**
* Handles create policy request.
*
* @param event Request invocation event
*/
public void handleButton2Request(RequestInvocationEvent event) throws ModelControlException {
submitCycle = true;
Rule rule = createRule();
if (rule != null) {
try {
CachedPolicy cachedPolicy = getCachedPolicy();
Policy policy = cachedPolicy.getPolicy();
policy.addRule(rule);
backTrail();
cachedPolicy.setPolicyModified(true);
forwardToPolicyViewBean();
} catch (NameAlreadyExistsException e) {
setInlineAlertMessage(CCAlert.TYPE_ERROR, "message.error", getModel().getErrorString(e));
forwardTo();
} catch (InvalidNameException e) {
setInlineAlertMessage(CCAlert.TYPE_ERROR, "message.error", getModel().getErrorString(e));
forwardTo();
} catch (AMConsoleException e) {
debug.warning("RuleAddViewBean.handleButton2Request", e);
redirectToStartURL();
}
} else {
forwardTo();
}
}
Aggregations