001: /*
002: * Copyright 2001 Sun Microsystems, Inc. All rights reserved.
003: * PROPRIETARY/CONFIDENTIAL. Use of this product is subject to license terms.
004: */
005: package com.sun.portal.rproxy.rewriter.test.util;
006:
007: import com.sun.portal.rewriter.RewriterModule;
008: import com.sun.portal.log.common.PortalLogger;
009: import com.sun.portal.rewriter.engines.LanguageConstants;
010: import com.sun.portal.rewriter.util.Resource;
011: import com.sun.portal.rewriter.util.StringHelper;
012: import com.sun.portal.rewriter.util.uri.PageSpec;
013: import com.sun.portal.rproxy.connectionhandler.Request;
014: import com.sun.portal.rproxy.rewriter.SRAPJSFunctionSpec;
015: import com.sun.portal.rproxy.rewriter.SRAPRewriterModule;
016: import com.sun.portal.rproxy.rewriter.util.uri.SRAPGatewayURI;
017:
018: import java.net.MalformedURLException;
019:
020: public class SRAPJSWrapperHelper {
021: private static final Request request = new MockRequest();
022:
023: private static String CONVERT_EXPRESSION_FUNCTION_NAME;
024: private static String CONVERT_SYSTEM_FUNCTION_NAME;
025:
026: static {
027: try {
028: CONVERT_EXPRESSION_FUNCTION_NAME = SRAPTestSystemFactory
029: .createSRAPTranslator().getJSFunctionSpec()
030: .getExpressionFunctionName();
031: CONVERT_SYSTEM_FUNCTION_NAME = SRAPTestSystemFactory
032: .createSRAPTranslator().getJSFunctionSpec()
033: .getSystemFunctionName();
034: } catch (MalformedURLException e) {
035: e.printStackTrace(); //To change body of catch statement use Options | File Templates.
036: }
037: }
038:
039: public static final String CONVERT_EXPRESSION_FUNCTION_WRAP_START = CONVERT_EXPRESSION_FUNCTION_NAME
040: + "(";
041: public static final String CONVERT_SYSTEM_FUNCTION_WRAP_START = CONVERT_SYSTEM_FUNCTION_NAME
042: + "(";
043:
044: public static final String COMMON_JS_FUNCTIONS = "\n"
045: + Resource.read(RewriterModule.RESOURCE_URI_UTILS_LOCATION)
046: .trim() + "\n";
047:
048: public static final String SRAP_CONVERT_EXPRESSION_FUNCTION_JS = createSRAP_CONVERT_EXPRESSION_FUNCTION_JS(request);
049:
050: public static final String SRAP_CONVERT_SYSTEM_FUNCTION_JS = createSRAP_CONVERT_SYSTEM_FUNCTION_JS(request);
051:
052: public static final String SRAP_CONVERT_ALL_FUNCTIONS_JS = createSRAP_CONVERT_ALL_FUNCTIONS_JS(request);
053:
054: public static final String SRAP_CONVERT_EXPRESSION_FUNCTION_HTML = createSRAP_CONVERT_EXPRESSION_FUNCTION_HTML(request);
055:
056: public static final String SRAP_CONVERT_SYSTEM_FUNCTION_HTML = createSRAP_CONVERT_SYSTEM_FUNCTION_HTML(request);
057:
058: public static final String SRAP_CONVERT_ALL_FUNCTIONS_HTML = createSRAP_CONVERT_ALL_FUNCTIONS_HTML(request);
059:
060: public static final String createSRAP_CONVERT_ALL_FUNCTIONS_HTML(
061: Request aRequest) {
062: return LanguageConstants.SCRIPT_TAG_BEGIN
063: + createSRAP_CONVERT_ALL_FUNCTIONS_JS(aRequest)
064: + LanguageConstants.SCRIPT_TAG_END;
065: }//createSRAP_CONVERT_ALL_FUNCTIONS_HTML(Request aRequest)
066:
067: public static final String createSRAP_CONVERT_ALL_FUNCTIONS_JS(
068: Request aRequest) {
069: return COMMON_JS_FUNCTIONS
070: + createSRAP_EXPRESSION_FUNCTION_JS(aRequest)
071: + createSRAP_SYSTEM_FUNCTION_JS(aRequest);
072: }//createSRAP_CONVERT_ALL_FUNCTIONS_JS(Request aRequest)
073:
074: public static final String createSRAP_CONVERT_EXPRESSION_FUNCTION_HTML(
075: Request aRequest) {
076: return LanguageConstants.SCRIPT_TAG_BEGIN
077: + createSRAP_CONVERT_EXPRESSION_FUNCTION_JS(aRequest)
078: + LanguageConstants.SCRIPT_TAG_END;
079: }//createSRAP_CONVERT_EXPRESSION_FUNCTION_HTML(Request aRequest)
080:
081: public static final String createSRAP_CONVERT_EXPRESSION_FUNCTION_JS(
082: Request aRequest) {
083: return COMMON_JS_FUNCTIONS
084: + createSRAP_EXPRESSION_FUNCTION_JS(aRequest);
085: }//createSRAP_CONVERT_EXPRESSION_FUNCTION_JS(Request aRequest)
086:
087: public static final String createSRAP_CONVERT_SYSTEM_FUNCTION_HTML(
088: Request aRequest) {
089: return LanguageConstants.SCRIPT_TAG_BEGIN
090: + createSRAP_CONVERT_SYSTEM_FUNCTION_JS(aRequest)
091: + LanguageConstants.SCRIPT_TAG_END;
092: }//createSRAP_CONVERT_SYSTEM_FUNCTION_HTML(Request aRequest)
093:
094: public static final String createSRAP_CONVERT_SYSTEM_FUNCTION_JS(
095: Request aRequest) {
096: return COMMON_JS_FUNCTIONS
097: + createSRAP_SYSTEM_FUNCTION_JS(aRequest);
098: }//createSRAP_CONVERT_SYSTEM_FUNCTION_JS(Request aRequest)
099:
100: public static final String createSRAP_EXPRESSION_FUNCTION_JS(
101: Request aRequest) {
102: try {
103: PageSpec lPageSpec = new PageSpec(aRequest.getURL());
104: return "\n"
105: + StringHelper
106: .searchAndReplace(
107: StringHelper
108: .searchAndReplace(
109: StringHelper
110: .searchAndReplace(
111: StringHelper
112: .searchAndReplace(
113: Resource
114: .read(
115: SRAPRewriterModule.RESOURCE_CONVERT_EXPRESSTION_FUNCTION_LOCATION)
116: .trim(),
117: SRAPJSFunctionSpec.INSERT_EXPRESSION_FUNCTION_NAME_PATTERN,
118: CONVERT_EXPRESSION_FUNCTION_NAME),
119: SRAPJSFunctionSpec.INSERT_PAGE_NETWORK_URI_PATTERN,
120: lPageSpec
121: .getBaseURI()
122: .getNetworkURI()),
123: SRAPJSFunctionSpec.INSERT_PAGE_BASE_URI_PATTERN,
124: lPageSpec
125: .getBaseURI()
126: .getBaseHREF()),
127: SRAPJSFunctionSpec.INSERT_GATEWAY_URI_PATTERN,
128: new SRAPGatewayURI(aRequest
129: .getGatewayURL())
130: .toReverseProxyForm())
131: + "\n";
132: } catch (MalformedURLException e) {
133: e.printStackTrace(); //To change body of catch statement use Options | File Templates.
134: }
135: return null;
136: }//createSRAP_EXPRESSION_FUNCTION_JS(Request aRequest)
137:
138: public static final String createSRAP_SYSTEM_FUNCTION_JS(
139: Request aRequest) {
140: try {
141: PageSpec lPageSpec = new PageSpec(aRequest.getURL());
142: return "\n"
143: + StringHelper
144: .searchAndReplace(
145: StringHelper
146: .searchAndReplace(
147: StringHelper
148: .searchAndReplace(
149: StringHelper
150: .searchAndReplace(
151: Resource
152: .read(
153: SRAPRewriterModule.RESOURCE_CONVERT_SYSTEM_FUNCTION_LOCATION)
154: .trim(),
155: SRAPJSFunctionSpec.INSERT_SYSTEM_FUNCTION_NAME_PATTERN,
156: CONVERT_SYSTEM_FUNCTION_NAME),
157: SRAPJSFunctionSpec.INSERT_PAGE_NETWORK_URI_PATTERN,
158: lPageSpec
159: .getBaseURI()
160: .getNetworkURI()),
161: SRAPJSFunctionSpec.INSERT_PAGE_BASE_URI_PATTERN,
162: lPageSpec
163: .getBaseURI()
164: .getBaseHREF()),
165: SRAPJSFunctionSpec.INSERT_GATEWAY_URI_PATTERN,
166: (new SRAPGatewayURI(aRequest
167: .getGatewayURL())
168: .toReverseProxyForm()))
169: + "\n";
170: } catch (MalformedURLException e) {
171: e.printStackTrace(); //To change body of catch statement use Options | File Templates.
172: }
173:
174: return null;
175: }//createSRAP_SYSTEM_FUNCTION_JS(Request aRequest)
176: }//class SRAPJSWrapperHelper
|