if (type == WebForward.TYPE_TUNNELED_SITE) {
com.adito.webforwards.TunneledSiteWebForward sswf = new com.adito.webforwards.TunneledSiteWebForward(user.getRealm().getRealmID(),
-1, destinationURL, name, description, category, autoStart, now, now);
webForward = WebForwardDatabaseFactory.getInstance().createWebForward(sswf);
CoreEvent evt = new ResourceChangeEvent(this, WebForwardEventConstants.CREATE_WEB_FORWARD, webForward, this
.getSessionInfo(request), CoreEvent.STATE_SUCCESSFUL).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_CATEGORY, webForward.getCategory()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_TYPE,
((WebForwardTypeItem) WebForwardTypes.WEB_FORWARD_TYPES.get(webForward.getType())).getName()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_URL, webForward.getDestinationURL());
CoreServlet.getServlet().fireCoreEvent(evt);
} else if (type == WebForward.TYPE_REPLACEMENT_PROXY) {
com.adito.webforwards.ReplacementProxyWebForward spwf = new com.adito.webforwards.ReplacementProxyWebForward(user.getRealm().getRealmID(),
-1, destinationURL, name, description, category, authenticationUsername,
authenticationPassword, preferredAuthenticationScheme, encodeing, restrictToHosts, formType,
formParameters, autoStart, now, now);
AbstractAuthenticatingWebForward abstractAuthenticatingWebForward = (AbstractAuthenticatingWebForward) WebForwardDatabaseFactory
.getInstance().createWebForward(spwf);
CoreEvent evt = new ResourceChangeEvent(this, WebForwardEventConstants.CREATE_WEB_FORWARD, abstractAuthenticatingWebForward, this
.getSessionInfo(request), CoreEvent.STATE_SUCCESSFUL).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_CATEGORY, abstractAuthenticatingWebForward.getCategory()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_TYPE,
((WebForwardTypeItem) WebForwardTypes.WEB_FORWARD_TYPES.get(abstractAuthenticatingWebForward.getType())).getName()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_URL, abstractAuthenticatingWebForward.getDestinationURL()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_PREFERED_AUTH_SCHEME,
abstractAuthenticatingWebForward.getPreferredAuthenticationScheme()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_AUTH_USERNAME,
abstractAuthenticatingWebForward.getAuthenticationUsername()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_AUTH_FORM_TYPE,
abstractAuthenticatingWebForward.getFormType()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_REPLACEMENT_WEB_FORWARD_ENCODEING, spwf.getEncoding());
spwf.addFormParametersToEvent(evt, WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_AUTH_FORM_PARAMETERS);
spwf
.addRestrictToHostsToEvent(evt,
WebForwardEventConstants.EVENT_ATTR_REPLACEMENT_WEB_FORWARD_RESTRICT_TO_HOSTS);
CoreServlet.getServlet().fireCoreEvent(evt);
webForward = abstractAuthenticatingWebForward;
} else if (type == WebForward.TYPE_PATH_BASED_REVERSE_PROXY || type == WebForward.TYPE_HOST_BASED_REVERSE_PROXY) {
com.adito.webforwards.ReverseProxyWebForward rpwf = new com.adito.webforwards.ReverseProxyWebForward(user.getRealm().getRealmID(),
-1, type, destinationURL, name, description, category, authenticationUsername,
authenticationPassword, preferredAuthenticationScheme, formType, formParameters, paths,
hostHeader, activeDNS, autoStart, now, now, encodeing);
AbstractAuthenticatingWebForward abstractAuthenticatingWebForward = (AbstractAuthenticatingWebForward) WebForwardDatabaseFactory
.getInstance().createWebForward(rpwf);
CoreEvent evt = new ResourceChangeEvent(this, WebForwardEventConstants.CREATE_WEB_FORWARD, abstractAuthenticatingWebForward, this
.getSessionInfo(request), CoreEvent.STATE_SUCCESSFUL).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_CATEGORY, abstractAuthenticatingWebForward.getCategory()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_TYPE,
((WebForwardTypeItem) WebForwardTypes.WEB_FORWARD_TYPES.get(abstractAuthenticatingWebForward.getType())).getName()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_URL, abstractAuthenticatingWebForward.getDestinationURL()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_PREFERED_AUTH_SCHEME,
abstractAuthenticatingWebForward.getPreferredAuthenticationScheme()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_AUTH_USERNAME,
abstractAuthenticatingWebForward.getAuthenticationUsername()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_AUTH_FORM_TYPE,
abstractAuthenticatingWebForward.getFormType()).addAttribute(
WebForwardEventConstants.EVENT_ATTR_REVERSE_WEB_FORWARD_ACTIVE_DNS, String.valueOf(rpwf.getActiveDNS()))
.addAttribute(WebForwardEventConstants.EVENT_ATTR_REVERSE_WEB_FORWARD_HOST_HEADER,
rpwf.getHostHeader());
rpwf.addPathsToEvent(evt, WebForwardEventConstants.EVENT_ATTR_REVERSE_WEB_FORWARD_PATHS);
rpwf.addCustomHeadersToEvent(evt, WebForwardEventConstants.EVENT_ATTR_REVERSE_WEB_FORWARD_CUSTOM_HEADERS);
rpwf.addFormParametersToEvent(evt, WebForwardEventConstants.EVENT_ATTR_WEB_FORWARD_AUTH_FORM_PARAMETERS);
CoreServlet.getServlet().fireCoreEvent(evt);
webForward = abstractAuthenticatingWebForward;
}
} catch (Exception e) {
CoreServlet.getServlet().fireCoreEvent(
new ResourceChangeEvent(this, WebForwardEventConstants.CREATE_WEB_FORWARD, this.getSessionInfo(request), e));
throw e;
}
actionStatus.add(new WizardActionStatus(WizardActionStatus.COMPLETED_OK,
"webForwardWizard.webForwardFinish.status.profileCreated"));
} catch (Exception e) {