/** * Get the current thread's context class loader which is set to the CommonClassLoader by * ApplicationServer * * @return the thread's context classloader if it exists; else the system class loader. */ public static ClassLoader getClassLoader() { if (Thread.currentThread().getContextClassLoader() != null) { return Thread.currentThread().getContextClassLoader(); } else { return ClassLoader.getSystemClassLoader(); } }
@Override public void render(RenderRequest portletReq, RenderResponse portletResp) throws PortletException, IOException { LOGGER.entering(LOG_CLASS, "main portlet render entry"); long tid = Thread.currentThread().getId(); portletReq.setAttribute(THREADID_ATTR, tid); PrintWriter writer = portletResp.getWriter(); writer.write( "<div id=\"DispatcherTests_SPEC2_19_ForwardServletResource\">no resource output.</div>\n"); ResourceURL resurl = portletResp.createResourceURL(); resurl.setCacheability(PAGE); writer.write("<script>\n"); writer.write("(function () {\n"); writer.write(" var xhr = new XMLHttpRequest();\n"); writer.write(" xhr.onreadystatechange=function() {\n"); writer.write(" if (xhr.readyState==4 && xhr.status==200) {\n"); writer.write( " document.getElementById(\"DispatcherTests_SPEC2_19_ForwardServletResource\").innerHTML=xhr.responseText;\n"); writer.write(" }\n"); writer.write(" };\n"); writer.write(" xhr.open(\"GET\",\"" + resurl.toString() + "\",true);\n"); writer.write(" xhr.send();\n"); writer.write("})();\n"); writer.write("</script>\n"); }
/** Looks up the local database, creating if necessary. */ private DataSource findDatabaseImpl(String url, String driverName) throws SQLException { try { synchronized (_databaseMap) { DBPool db = _databaseMap.get(url); if (db == null) { db = new DBPool(); db.setVar(url + "-" + _gId++); DriverConfig driver = db.createDriver(); ClassLoader loader = Thread.currentThread().getContextClassLoader(); Class driverClass = Class.forName(driverName, false, loader); driver.setType(driverClass); driver.setURL(url); db.init(); _databaseMap.put(url, db); } return db; } } catch (RuntimeException e) { throw e; } catch (SQLException e) { throw e; } catch (Exception e) { throw ConfigException.create(e); } }
@Override public void serveResource(ResourceRequest portletReq, ResourceResponse portletResp) throws PortletException, IOException { LOGGER.entering(LOG_CLASS, "main portlet serveResource entry"); long tid = Thread.currentThread().getId(); portletReq.setAttribute(THREADID_ATTR, tid); PrintWriter writer = portletResp.getWriter(); }
@Override public void processAction(ActionRequest portletReq, ActionResponse portletResp) throws PortletException, IOException { LOGGER.entering(LOG_CLASS, "main portlet processAction entry"); portletResp.setRenderParameters(portletReq.getParameterMap()); long tid = Thread.currentThread().getId(); portletReq.setAttribute(THREADID_ATTR, tid); StringWriter writer = new StringWriter(); }
protected int pick(int iThink, boolean couldCreate) { final int id = Thread.currentThread().hashCode(); final int s = _availSafe.size(); for (int i = 0; i < s; i++) { DBPort p = _availSafe.get(i); if (p._lastThread == id) return i; } if (couldCreate) return -1; return iThink; }
/** * This method can be called to wait until the application has been launched. The caller thread * will be blocked until the application has been launched. This method will return immediately if * the application has already been launched when it is called. */ public static void waitUntilLaunched() { AppLogger.finer("called, thread=" + Thread.currentThread()); synchronized (LAUNCH_LOCK) { while (isLaunching) { try { AppLogger.finer("waiting"); LAUNCH_LOCK.wait(); } catch (InterruptedException e) { // will loop } } } }
public DBPort get() { DBPort port = null; if (!_waitingSem.tryAcquire()) throw new SemaphoresOut(); try { port = get(_options.maxWaitTime); } finally { _waitingSem.release(); } if (port == null) throw new ConnectionWaitTimeOut(_options.maxWaitTime); port._lastThread = Thread.currentThread().hashCode(); return port; }
private void initDriverList() { try { Thread thread = Thread.currentThread(); ClassLoader loader = thread.getContextClassLoader(); Enumeration iter = loader.getResources("META-INF/services/java.sql.Driver"); while (iter.hasMoreElements()) { URL url = (URL) iter.nextElement(); ReadStream is = null; try { is = Vfs.lookup(url.toString()).openRead(); String filename; while ((filename = is.readLine()) != null) { int p = filename.indexOf('#'); if (p >= 0) filename = filename.substring(0, p); filename = filename.trim(); if (filename.length() == 0) continue; try { Class cl = Class.forName(filename, false, loader); Driver driver = null; if (Driver.class.isAssignableFrom(cl)) driver = (Driver) cl.newInstance(); if (driver != null) { log.fine(L.l("DatabaseManager adding driver '{0}'", driver.getClass().getName())); _driverList.add(driver); } } catch (Exception e) { log.log(Level.FINE, e.toString(), e); } } } catch (Exception e) { log.log(Level.FINE, e.toString(), e); } finally { if (is != null) is.close(); } } } catch (Exception e) { log.log(Level.FINE, e.toString(), e); } }
public JungGraphObserver(String name) { this.name = name; this.hyphadataPid = Configuration.getPid(PAR_HYPHADATA_PROTO); this.hyphalinkPid = Configuration.getPid(PAR_HYPHALINK_PROTO); this.mycocastPid = Configuration.getPid(PAR_MYCOCAST_PROTO); this.period = Configuration.getInt(name + "." + PAR_PERIOD); this.walkDelay = Configuration.getInt(name + "." + PAR_WALK_DELAY); mainThread = Thread.currentThread(); this.changeListeners = new HashSet<ChangeListener>(); visualizer = null; // HyphaData.addHyphaDataListener(this); // HyphaLink.addHyphaLinkListener(this); }
/** * Runs in {@link #sendKeepAliveMessageThread} to notify this instance that * <tt>sendKeepAliveMessageThread</tt> is about to exit. */ private void exitSendKeepAliveMessageThread() { synchronized (sendKeepAliveMessageSyncRoot) { if (sendKeepAliveMessageThread == Thread.currentThread()) sendKeepAliveMessageThread = null; /* * Well, if the currentThread is finishing and this instance is * still to send keep-alive messages, we'd better start another * Thread for the purpose to continue the work that the * currentThread was supposed to carry out. */ if ((sendKeepAliveMessageThread == null) && (sendKeepAliveMessageInterval != SEND_KEEP_ALIVE_MESSAGE_INTERVAL_NOT_SPECIFIED)) { createSendKeepAliveMessageThread(); } } }
/** * Runs in {@link #sendKeepAliveMessageThread} and sends STUN keep-alive <tt>Message</tt>s to the * STUN server associated with the <tt>StunCandidateHarvester</tt> of this instance. * * @return <tt>true</tt> if the method is to be invoked again; otherwise, <tt>false</tt> */ private boolean runInSendKeepAliveMessageThread() { synchronized (sendKeepAliveMessageSyncRoot) { // Since we're going to #wait, make sure we're not canceled yet. if (sendKeepAliveMessageThread != Thread.currentThread()) return false; if (sendKeepAliveMessageInterval == SEND_KEEP_ALIVE_MESSAGE_INTERVAL_NOT_SPECIFIED) { return false; } // Determine the amount of milliseconds that we'll have to #wait. long timeout; if (sendKeepAliveMessageTime == -1) { /* * If we're just starting, don't just go and send a new STUN * keep-alive message but rather wait for the whole interval. */ timeout = sendKeepAliveMessageInterval; } else { timeout = sendKeepAliveMessageTime + sendKeepAliveMessageInterval - System.currentTimeMillis(); } // At long last, #wait if necessary. if (timeout > 0) { try { sendKeepAliveMessageSyncRoot.wait(timeout); } catch (InterruptedException iex) { } /* * Apart from being the time to send the STUN keep-alive * message, it could be that we've experienced a spurious * wake-up or that we've been canceled. */ return true; } } sendKeepAliveMessageTime = System.currentTimeMillis(); try { sendKeepAliveMessage(); } catch (StunException sex) { logger.log(Level.INFO, "Failed to send STUN keep-alive message.", sex); } return true; }
@Override public void serveResource(ResourceRequest portletReq, ResourceResponse portletResp) throws PortletException, IOException { LOGGER.entering(LOG_CLASS, "main portlet serveResource entry"); long tid = Thread.currentThread().getId(); portletReq.setAttribute(THREADID_ATTR, tid); PrintWriter writer = portletResp.getWriter(); // Now do the actual dispatch String target = SERVLET_PREFIX + "DispatcherTests_SPEC2_19_ForwardServletResource_servlet" + SERVLET_SUFFIX + "?" + QUERY_STRING; PortletRequestDispatcher rd = portletConfig.getPortletContext().getRequestDispatcher(target); rd.forward(portletReq, portletResp); }
@Override public void processAction(ActionRequest portletReq, ActionResponse portletResp) throws PortletException, IOException { LOGGER.entering(LOG_CLASS, "main portlet processAction entry"); portletResp.setRenderParameters(portletReq.getParameterMap()); long tid = Thread.currentThread().getId(); portletReq.setAttribute(THREADID_ATTR, tid); StringWriter writer = new StringWriter(); // Now do the actual dispatch String target = JSP_PREFIX + "DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse" + JSP_SUFFIX + "?" + QUERY_STRING; PortletRequestDispatcher rd = portletConfig.getPortletContext().getRequestDispatcher(target); rd.include(portletReq, portletResp); }
// ----This function getting nodes from mongo's collection tree_nodes---- // ---------the function insert nodes to neo4j and deletes it from mongo----------- // ---------------------------------------------------------------------------------------- public void update_tree() { while (true) { DBObject obj = new BasicDBObject(); obj.put("in_process", 0); // when other thread processing, 'in_process'=1 DBCursor cursor = this.colltree.find(obj); // find only documents not in use of other thread // log4j.info(cursor.count() + " documents to process in collection tree nodes"); if (!cursor.hasNext()) { // no documents to process try { log4j.info("there is no nodes to process at the moment, going to sleep for 10 seconds"); Thread.currentThread(); Thread.sleep(1000 * 10); log4j.info("update_tree woke up, continues"); } catch (InterruptedException e) { log4j.error("InterruptedException caught, at update_all_tweets"); e.printStackTrace(); log4j.error(e); } } else // there are documents to process { try { while (cursor.hasNext()) { DBObject tr = cursor.next(); try { String parent = tr.get("parent").toString(); String[] sons = tr.get("son").toString().split(","); // make array of sons neo4j.addNode( parent, sons, this.log4j); // create nodes and relationships if not exists this.colltree.remove(tr); // remove document from collection } catch (ConcurrentModificationException e) { // log4j.error(e); log4j.warn(e); } } } catch (MongoException e) { log4j.error(e); } } } }
/** Utility routine for setting the context class loader. Returns previous class loader. */ public static ClassLoader setContextClassLoader(ClassLoader newClassLoader) { // Can only reference final local variables from dopriveleged block final ClassLoader classLoaderToSet = newClassLoader; final Thread currentThread = Thread.currentThread(); ClassLoader originalClassLoader = currentThread.getContextClassLoader(); if (classLoaderToSet != originalClassLoader) { if (System.getSecurityManager() == null) { currentThread.setContextClassLoader(classLoaderToSet); } else { java.security.AccessController.doPrivileged( new java.security.PrivilegedAction() { public java.lang.Object run() { currentThread.setContextClassLoader(classLoaderToSet); return null; } }); } } return originalClassLoader; }
@Override public void run() { byte[] buf = new byte[100]; try { int len; while ((len = in.read(buf)) > 0) { String output = new String(buf, 0, len); Thread t = Thread.currentThread(); System.out.println( "thread " + t.getName() + " " + t.getId() + ", read " + len + " bytes: " + output); } } catch (IOException e) { logger.log(Level.SEVERE, "Failed to read", e); } finally { try { in.close(); } catch (IOException e) { logger.log(Level.SEVERE, "Failed to close", e); } } }
/** * Density function for a Dirichlet distribution. The distribution is defined through an array of * alpha hyper-parameters. * * @author Pierre Lison ([email protected]) */ public class DirichletDensityFunction implements DensityFunction { // logger public static final Logger log = Logger.getLogger("OpenDial"); // hyper-parameters final double[] alphas; // normalisation factor final double C; // random number generator static final Random rng = new Random(Calendar.getInstance().getTimeInMillis() + Thread.currentThread().getId()); /** * Create a new Dirichlet density function with the provided alpha parameters * * @param alphas the hyper-parameters for the density function */ public DirichletDensityFunction(double[] alphas) { this.alphas = alphas; if (alphas.length < 2) { log.warning("must have at least 2 alphas"); } for (int i = 0; i < alphas.length; i++) { if (alphas[i] <= 0) { log.warning("alphas of the Dirichlet distribution are not well formed"); } } C = calculateC(); } /** * Returns the density for a given point x. The dimensionality of x must correspond to the * dimensionality of the density function. * * @param x a given point * @return the density for the point */ @Override public double getDensity(double... x) { if (x.length == alphas.length) { double result = C; for (int i = 0; i < x.length; i++) { result *= Math.pow(x[i], alphas[i] - 1); } return result; } log.warning("incompatible sizes: " + x.length + "!=" + alphas.length); return 0.0; } /** * Returns the dimensionality of the density function * * @return the dimensionality */ @Override public int getDimensions() { return alphas.length; } /** * Returns a sampled value for the density function. * * @return the sampled point. */ @Override public double[] sample() { double[] sample = new double[alphas.length]; double sum = 0; for (int i = 0; i < alphas.length; i++) { sample[i] = sampleFromGamma(alphas[i], 1); sum += sample[i]; } for (int i = 0; i < alphas.length; i++) { sample[i] = sample[i] / sum; } return sample; } /** * Copies the density function (keeping the same alpha-values). * * @return the copied function */ @Override public DirichletDensityFunction copy() { return new DirichletDensityFunction(alphas); } /** * Returns the name and hyper-parameters of the distribution * * @return the string for the density function */ @Override public String toString() { return "Dirichlet(" + Arrays.asList(alphas) + ")"; } /** * Returns the normalisation factor for the distribution. * * @return the normalisation factor. */ private double calculateC() { double alphaSum = 0; double denominator = 1; for (int i = 0; i < alphas.length; i++) { alphaSum += alphas[i]; denominator *= MathUtils.gamma(alphas[i]); } double numerator = MathUtils.gamma(alphaSum); if (denominator != 0.0) { return numerator / denominator; } else { return Double.MAX_VALUE; } } /** * Samples a value from a gamma distribution with parameters k and theta. Reference: Non-Uniform * Random Variate Generation, Devroye. (URL: http://cgm.cs.mcgill.ca/~luc/rnbookindex.html). * * @param k the parameter k * @param theta the parameter theta * @return the sample distribution */ private double sampleFromGamma(double k, double theta) { boolean accept = false; if (k < 1) { // Weibull algorithm double c = (1 / k); double d = ((1 - k) * Math.pow(k, (k / (1 - k)))); double u, v, z, e, x; do { u = rng.nextDouble(); v = rng.nextDouble(); z = -Math.log(u); e = -Math.log(v); x = Math.pow(z, c); if ((z + e) >= (d + x)) { accept = true; } } while (!accept); return (x * theta); } else { // Cheng's algorithm double b = (k - Math.log(4)); double c = (k + Math.sqrt(2 * k - 1)); double lam = Math.sqrt(2 * k - 1); double cheng = (1 + Math.log(4.5)); double u, v, x, y, z, r; do { u = rng.nextDouble(); v = rng.nextDouble(); y = ((1 / lam) * Math.log(v / (1 - v))); x = (k * Math.exp(y)); z = (u * v * v); r = (b + (c * y) - x); if ((r >= ((4.5 * z) - cheng)) || (r >= Math.log(z))) { accept = true; } } while (!accept); return (x * theta); } } /** * Returns a discretised version of the Dirichlet. The discretised table is simply a list of X * sampled values from the Dirichlet, each value having a probability 1/X. * * @return the discretised version of the density function. */ @Override public Map<double[], Double> discretise(int nbBuckets) { Map<double[], Double> table = new HashMap<double[], Double>(); for (int i = 0; i < nbBuckets; i++) { table.put(sample(), 1.0 / nbBuckets); } return table; } /** * Returns the mean of the Dirichlet. * * @return the mean value. */ @Override public double[] getMean() { double[] mean = new double[alphas.length]; for (int i = 0; i < alphas.length; i++) { mean[i] = alphas[i] / getAlphaSum(); } return mean; } /** * Returns the variance of the Dirichlet. * * @return the variance. */ @Override public double[] getVariance() { double[] variance = new double[alphas.length]; double denominator = Math.pow(getAlphaSum(), 2) * (getAlphaSum() + 1); for (int j = 0; j < alphas.length; j++) { double numerator = alphas[j] * (getAlphaSum() - alphas[j]); variance[j] = numerator / denominator; } return variance; } /** * Throws an exception (calculating the CDF of a Dirichlet is quite hard and not currently * implemented). */ @Override public double getCDF(double... x) { throw new RuntimeException( "currently not implemented (CDF of Dirichlet has apparently no closed-form solution)"); } /** * Returns the hashcode for the distribution. * * @return the hashcode */ @Override public int hashCode() { return -32 + Arrays.asList(alphas).hashCode(); } private double getAlphaSum() { double sum = 0; for (int j = 0; j < alphas.length; j++) { sum += alphas[j]; } return sum; } @Override public List<Element> generateXML(Document doc) { Element distribElement = doc.createElement("distrib"); Attr id = doc.createAttribute("type"); id.setValue("dirichlet"); distribElement.setAttributeNode(id); for (int i = 0; i < alphas.length; i++) { Element alphaElement = doc.createElement("alpha"); alphaElement.setTextContent("" + alphas[i]); distribElement.appendChild(alphaElement); } return Arrays.asList(distribElement); } }
// ----This function gets the raw json from raw_data collection---- // ---------the function separate the tweets and inserts it to all_tweets collection and calling // all other data processing methods----------- // ---------------------------------------------------------------------------------------- public void update_all_tweets(final double num_of_slots, final double max_time_frame_hours) throws MongoException, ParseException { log4j.info("starting update_all_tweets function"); String res = new String(); Integer countelements = 0; while (true) { // DBCursor cursor = this.collrd.find(); while (this.collrd.count() < 1) { // no documents to process try { log4j.info("there is no raw data at the moment, going to sleep for 10 seconds"); Thread.currentThread(); Thread.sleep(1000 * 10); log4j.info("woke up, continues"); // cursor = this.collrd.find(); } catch (InterruptedException e) { log4j.error("InterruptedException caught, at update_all_tweets"); log4j.error(e); } } DBCursor cursor = this.collrd.find(); // get all documents from raw_data collection try { while (cursor.hasNext()) { DBObject currdoc = cursor.next(); log4j.info("getting a document from the raw data db"); Object results = currdoc.get("results"); // result - json array of tweets try { res = results.toString(); } catch (NullPointerException e) { res = ""; } Object obj = JSONValue.parse(res); log4j.info("making an array from the jsons tweets"); JSONArray array = (JSONArray) obj; // make an array of tweets // JSONParser parser = new JSONParser(); try { if (res != "") { // if there are tweets @SuppressWarnings("rawtypes") Iterator iterArray = array.iterator(); log4j.info("iterating over array tweets"); try { while (iterArray.hasNext()) { Object current = iterArray.next(); final DBObject dbObject = (DBObject) JSON.parse(current.toString()); // parse all tweet data to json countelements++; // System.out.println("element number" + countelements.toString()); dbObject.put("max_id", currdoc.get("max_id")); // add max_id to tweet data dbObject.put("query", currdoc.get("query")); // add query word to tweet data dbObject.put( "query_time", currdoc.get("query_time")); // add query time to tweet data dbObject.put("query_time_string", currdoc.get("query_time_string")); dbObject.put( "text", "@" + dbObject.get("from_user").toString() + ": " + dbObject.get("text").toString()); // add user_name to beginning of text dbObject.put("count", 1L); // add appearance counter to tweet data log4j.info("inserting tweet id: " + dbObject.get("id").toString()); try { DBObject object = new BasicDBObject(); object.put( "id", Long.parseLong(dbObject.get("id").toString())); // object to search DBObject newobject = collat.findOne(object); if (newobject != null) { newobject.put( "count", Long.parseLong(newobject.get("count").toString()) + 1); // update counter if id already exists collat.update(object, newobject); } } catch (NullPointerException e) { } collat.insert(dbObject); // collrd.findAndRemove(currdoc); // log4j.info("calling function update_search_terms"); // final String text = "@" + dbObject.get("from_user").toString() + ": " + // dbObject.get("text").toString(); /*Thread t10=new Thread(new Runnable(){ public void run(){ UpdateTweetCounterId(Long.parseLong(dbObject.get("id").toString())); } });*/ Thread t11 = new Thread( new Runnable() { public void run() { update_search_terms( dbObject.get("text").toString(), num_of_slots, max_time_frame_hours, dbObject.get("query").toString()); } }); Thread t12 = new Thread( new Runnable() { public void run() { rate_user( Long.parseLong(dbObject.get("from_user_id").toString()), dbObject.get("from_user").toString(), max_time_frame_hours); // UpdateUserRate((long)num_of_slots,slot_time_millis,Long.parseLong(dbObject.get("from_user_id").toString()) , dbObject.get("from_user").toString() ,(long)0); } }); Thread t13 = new Thread( new Runnable() { public void run() { String quer = dbObject.get("query").toString(); quer = quer.replaceAll("%40", "@"); quer = quer.replaceAll("%23", "#"); long id = (long) (Double.parseDouble(dbObject.get("query_time").toString()) * 1000); String idplus = dbObject.get("id").toString() + "," + id; SearchResultId(quer, idplus); } }); // t10.start(); t11.start(); t12.start(); t13.start(); try { log4j.info("Waiting for threads to finish."); // t10.join(); t11.join(); t12.join(); t13.join(); } catch (InterruptedException e) { log4j.error("Main thread (update_all_tweets) Interrupted"); } } } catch (Exception e) { log4j.error(e); e.printStackTrace(); } } } catch (NullPointerException e) { log4j.error(e); log4j.info("NullPointerException caught, at update_all_tweets"); } log4j.info("removing processed document from raw_data collection"); try { this.collrd.remove(currdoc); } catch (Exception e) { log4j.debug(e); } } } catch (MongoException e) { log4j.error(e); } } }
private void sleep(int time) { try { Thread.currentThread().sleep(time); } catch (Exception e) { } }
@Override public void serveResource(ResourceRequest portletReq, ResourceResponse portletResp) throws PortletException, IOException { LOGGER.entering(LOG_CLASS, "main portlet serveResource entry"); long tid = Thread.currentThread().getId(); portletReq.setAttribute(THREADID_ATTR, tid); PrintWriter writer = portletResp.getWriter(); JSR286SignatureTestCaseDetails tcd = new JSR286SignatureTestCaseDetails(); // Create result objects for the tests PortletURL url = portletResp.createActionURL(); ClassChecker cc = new ClassChecker(url.getClass()); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasAddProperty */ /* Details: "Action URL has a addProperty(String, String) method " */ TestResult tr0 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASADDPROPERTY); try { String name = "addProperty"; Class<?>[] exceptions = null; Class<?>[] parms = {String.class, String.class}; tr0.setTcSuccess(cc.hasMethod(name, parms, exceptions)); } catch (Exception e) { tr0.appendTcDetail(e.toString()); } tr0.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasAddPropertyReturns */ /* Details: "Action URL method addProperty(String, String) returns */ /* void " */ TestResult tr1 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASADDPROPERTYRETURNS); try { String name = "addProperty"; Class<?> retType = void.class; Class<?>[] parms = {String.class, String.class}; tr1.setTcSuccess(cc.methodHasReturnType(name, retType, parms)); } catch (Exception e) { tr1.appendTcDetail(e.toString()); } tr1.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasGetParameterMap */ /* Details: "Action URL has a getParameterMap() method " */ TestResult tr2 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASGETPARAMETERMAP); try { String name = "getParameterMap"; Class<?>[] exceptions = null; Class<?>[] parms = null; tr2.setTcSuccess(cc.hasMethod(name, parms, exceptions)); } catch (Exception e) { tr2.appendTcDetail(e.toString()); } tr2.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasGetParameterMapReturns */ /* Details: "Action URL method getParameterMap() returns */ /* java.util.Map " */ TestResult tr3 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASGETPARAMETERMAPRETURNS); try { String name = "getParameterMap"; Class<?> retType = java.util.Map.class; Class<?>[] parms = null; tr3.setTcSuccess(cc.methodHasReturnType(name, retType, parms)); } catch (Exception e) { tr3.appendTcDetail(e.toString()); } tr3.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasSetParameter */ /* Details: "Action URL has a setParameter(String, String) method " */ TestResult tr4 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASSETPARAMETER); try { String name = "setParameter"; Class<?>[] exceptions = null; Class<?>[] parms = {String.class, String.class}; tr4.setTcSuccess(cc.hasMethod(name, parms, exceptions)); } catch (Exception e) { tr4.appendTcDetail(e.toString()); } tr4.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasSetParameterA */ /* Details: "Action URL has a setParameter(String, String[]) method */ /* " */ TestResult tr5 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASSETPARAMETERA); try { String name = "setParameter"; Class<?>[] exceptions = null; Class<?>[] parms = {String.class, String[].class}; tr5.setTcSuccess(cc.hasMethod(name, parms, exceptions)); } catch (Exception e) { tr5.appendTcDetail(e.toString()); } tr5.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasSetParameterReturns */ /* Details: "Action URL method setParameter(String, String) returns */ /* void " */ TestResult tr6 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASSETPARAMETERRETURNS); try { String name = "setParameter"; Class<?> retType = void.class; Class<?>[] parms = {String.class, String.class}; tr6.setTcSuccess(cc.methodHasReturnType(name, retType, parms)); } catch (Exception e) { tr6.appendTcDetail(e.toString()); } tr6.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasSetParameterReturnsA */ /* Details: "Action URL method setParameter(String, String[]) returns */ /* void " */ TestResult tr7 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASSETPARAMETERRETURNSA); try { String name = "setParameter"; Class<?> retType = void.class; Class<?>[] parms = {String.class, String[].class}; tr7.setTcSuccess(cc.methodHasReturnType(name, retType, parms)); } catch (Exception e) { tr7.appendTcDetail(e.toString()); } tr7.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasSetParameters */ /* Details: "Action URL has a setParameters(java.util.Map) method " */ TestResult tr8 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASSETPARAMETERS); try { String name = "setParameters"; Class<?>[] exceptions = null; Class<?>[] parms = {java.util.Map.class}; tr8.setTcSuccess(cc.hasMethod(name, parms, exceptions)); } catch (Exception e) { tr8.appendTcDetail(e.toString()); } tr8.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasSetParametersReturns */ /* Details: "Action URL method setParameters(java.util.Map) returns */ /* void " */ TestResult tr9 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASSETPARAMETERSRETURNS); try { String name = "setParameters"; Class<?> retType = void.class; Class<?>[] parms = {java.util.Map.class}; tr9.setTcSuccess(cc.methodHasReturnType(name, retType, parms)); } catch (Exception e) { tr9.appendTcDetail(e.toString()); } tr9.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasSetProperty */ /* Details: "Action URL has a setProperty(String, String) method " */ TestResult tr10 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASSETPROPERTY); try { String name = "setProperty"; Class<?>[] exceptions = null; Class<?>[] parms = {String.class, String.class}; tr10.setTcSuccess(cc.hasMethod(name, parms, exceptions)); } catch (Exception e) { tr10.appendTcDetail(e.toString()); } tr10.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasSetPropertyReturns */ /* Details: "Action URL method setProperty(String, String) returns */ /* void " */ TestResult tr11 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASSETPROPERTYRETURNS); try { String name = "setProperty"; Class<?> retType = void.class; Class<?>[] parms = {String.class, String.class}; tr11.setTcSuccess(cc.methodHasReturnType(name, retType, parms)); } catch (Exception e) { tr11.appendTcDetail(e.toString()); } tr11.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasSetSecure */ /* Details: "Action URL has a setSecure(boolean) throws */ /* PortletSecurityException method " */ TestResult tr12 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASSETSECURE); try { String name = "setSecure"; Class<?>[] exceptions = {PortletSecurityException.class}; Class<?>[] parms = {boolean.class}; tr12.setTcSuccess(cc.hasMethod(name, parms, exceptions)); } catch (Exception e) { tr12.appendTcDetail(e.toString()); } tr12.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasSetSecureReturns */ /* Details: "Action URL method setSecure(boolean) returns void " */ TestResult tr13 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASSETSECURERETURNS); try { String name = "setSecure"; Class<?> retType = void.class; Class<?>[] parms = {boolean.class}; tr13.setTcSuccess(cc.methodHasReturnType(name, retType, parms)); } catch (Exception e) { tr13.appendTcDetail(e.toString()); } tr13.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasToString */ /* Details: "Action URL has a toString() method " */ TestResult tr14 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASTOSTRING); try { String name = "toString"; Class<?>[] exceptions = null; Class<?>[] parms = null; tr14.setTcSuccess(cc.hasMethod(name, parms, exceptions)); } catch (Exception e) { tr14.appendTcDetail(e.toString()); } tr14.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasToStringReturns */ /* Details: "Action URL method toString() returns String " */ TestResult tr15 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASTOSTRINGRETURNS); try { String name = "toString"; Class<?> retType = String.class; Class<?>[] parms = null; tr15.setTcSuccess(cc.methodHasReturnType(name, retType, parms)); } catch (Exception e) { tr15.appendTcDetail(e.toString()); } tr15.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasWrite */ /* Details: "Action URL has a write(java.io.Writer) throws */ /* java.io.IOException method " */ TestResult tr16 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASWRITE); try { String name = "write"; Class<?>[] exceptions = {java.io.IOException.class}; Class<?>[] parms = {java.io.Writer.class}; tr16.setTcSuccess(cc.hasMethod(name, parms, exceptions)); } catch (Exception e) { tr16.appendTcDetail(e.toString()); } tr16.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasWriteA */ /* Details: "Action URL has a write(java.io.Writer, boolean) throws */ /* java.io.IOException method " */ TestResult tr17 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASWRITEA); try { String name = "write"; Class<?>[] exceptions = {java.io.IOException.class}; Class<?>[] parms = {java.io.Writer.class, boolean.class}; tr17.setTcSuccess(cc.hasMethod(name, parms, exceptions)); } catch (Exception e) { tr17.appendTcDetail(e.toString()); } tr17.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasWriteReturns */ /* Details: "Action URL method write(java.io.Writer) returns void " */ TestResult tr18 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASWRITERETURNS); try { String name = "write"; Class<?> retType = void.class; Class<?>[] parms = {java.io.Writer.class}; tr18.setTcSuccess(cc.methodHasReturnType(name, retType, parms)); } catch (Exception e) { tr18.appendTcDetail(e.toString()); } tr18.writeTo(writer); /* TestCase: V2SigTestsURL_BaseURL_SIGResourceActurl_hasWriteReturnsA */ /* Details: "Action URL method write(java.io.Writer, boolean) returns */ /* void " */ TestResult tr19 = tcd.getTestResultFailed(V2SIGTESTSURL_BASEURL_SIGRESOURCEACTURL_HASWRITERETURNSA); try { String name = "write"; Class<?> retType = void.class; Class<?>[] parms = {java.io.Writer.class, boolean.class}; tr19.setTcSuccess(cc.methodHasReturnType(name, retType, parms)); } catch (Exception e) { tr19.appendTcDetail(e.toString()); } tr19.writeTo(writer); }
@Override public void serveResource(ResourceRequest portletReq, ResourceResponse portletResp) throws PortletException, IOException { LOGGER.entering(LOG_CLASS, "main portlet serveResource entry"); long tid = Thread.currentThread().getId(); portletReq.setAttribute(THREADID_ATTR, tid); PrintWriter writer = portletResp.getWriter(); JSR286ApiTestCaseDetails tcd = new JSR286ApiTestCaseDetails(); // Create result objects for the tests ClassChecker cc = new ClassChecker(portletResp.getCacheControl().getClass()); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_getExpirationTime1 */ /* Details: "Method getExpirationTime(): Returns the expiration time */ /* set through setExpirationTime" */ TestResult tr0 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_GETEXPIRATIONTIME1); /* TODO: implement test */ tr0.appendTcDetail("Not implemented."); tr0.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_getExpirationTime2 */ /* Details: "Method getExpirationTime(): Returns the default */ /* expiration time from the deployment descriptor if the expiration */ /* time has not been set" */ TestResult tr1 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_GETEXPIRATIONTIME2); /* TODO: implement test */ tr1.appendTcDetail("Not implemented."); tr1.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_getExpirationTime3 */ /* Details: "Method getExpirationTime(): Returns 0 if the expiration */ /* time has not been set and no default is set in the deployment */ /* descriptor" */ TestResult tr2 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_GETEXPIRATIONTIME3); /* TODO: implement test */ tr2.appendTcDetail("Not implemented."); tr2.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_setExpirationTime1 */ /* Details: "Method setExpirationTime(int): Sets the expiration time */ /* for the current response to the specified value" */ TestResult tr3 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_SETEXPIRATIONTIME1); /* TODO: implement test */ tr3.appendTcDetail("Not implemented."); tr3.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_setExpirationTime2 */ /* Details: "Method setExpirationTime(int): If the expiration value */ /* is set to 0, caching is disabled" */ TestResult tr4 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_SETEXPIRATIONTIME2); /* TODO: implement test */ tr4.appendTcDetail("Not implemented."); tr4.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_setExpirationTime3 */ /* Details: "Method setExpirationTime(int): If the expiration value */ /* is set to -1, the cache does not expire" */ TestResult tr5 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_SETEXPIRATIONTIME3); /* TODO: implement test */ tr5.appendTcDetail("Not implemented."); tr5.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_isPublicScope1 */ /* Details: "Method isPublicScope(): Returns true if the caching */ /* scope has been set to public through the setPublicScope method" */ TestResult tr6 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_ISPUBLICSCOPE1); /* TODO: implement test */ tr6.appendTcDetail("Not implemented."); tr6.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_isPublicScope2 */ /* Details: "Method isPublicScope(): Returns true if the caching */ /* scope default has not been set with the setPublicScope method, but */ /* has been set to public in the deployment descriptor " */ TestResult tr7 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_ISPUBLICSCOPE2); /* TODO: implement test */ tr7.appendTcDetail("Not implemented."); tr7.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_isPublicScope3 */ /* Details: "Method isPublicScope(): Returns false if the caching */ /* scope has not been set with the setPublicScope method, but has */ /* been set to private through the setPublicScope method " */ TestResult tr8 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_ISPUBLICSCOPE3); /* TODO: implement test */ tr8.appendTcDetail("Not implemented."); tr8.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_isPublicScope5 */ /* Details: "Method isPublicScope(): Returns false if the caching */ /* scope has not been set with the setPublicScope method and has not */ /* been set in the deployment descriptor" */ TestResult tr9 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_ISPUBLICSCOPE5); /* TODO: implement test */ tr9.appendTcDetail("Not implemented."); tr9.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_setPublicScope1 */ /* Details: "Method setPublicScope(boolean): If the input parameter */ /* is true, the cache scope is set to public" */ TestResult tr10 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_SETPUBLICSCOPE1); /* TODO: implement test */ tr10.appendTcDetail("Not implemented."); tr10.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_setPublicScope2 */ /* Details: "Method setPublicScope(boolean): If the input parameter */ /* is false, the cache scope is set to non-public" */ TestResult tr11 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_SETPUBLICSCOPE2); /* TODO: implement test */ tr11.appendTcDetail("Not implemented."); tr11.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_getETag1 */ /* Details: "Method getETag(): Returns a String containing the ETag */ /* for the current response" */ TestResult tr12 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_GETETAG1); /* TODO: implement test */ tr12.appendTcDetail("Not implemented."); tr12.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_getETag2 */ /* Details: "Method getETag(): Returns null if no ETag is set on the */ /* response" */ TestResult tr13 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_GETETAG2); /* TODO: implement test */ tr13.appendTcDetail("Not implemented."); tr13.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_setETag1 */ /* Details: "Method setETag(String): Sets an ETag for the current */ /* response" */ TestResult tr14 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_SETETAG1); /* TODO: implement test */ tr14.appendTcDetail("Not implemented."); tr14.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_setETag2 */ /* Details: "Method setETag(String): A previously-set ETag is */ /* overwritten" */ TestResult tr15 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_SETETAG2); /* TODO: implement test */ tr15.appendTcDetail("Not implemented."); tr15.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_setETag3 */ /* Details: "Method setETag(String): Removes the ETag if the input */ /* parameter is null" */ TestResult tr16 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_SETETAG3); /* TODO: implement test */ tr16.appendTcDetail("Not implemented."); tr16.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_useCachedContent1 */ /* Details: "Method useCachedContent(): Returns true if cached */ /* content has been set to valid through the setUseCachedContent */ /* method" */ TestResult tr17 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_USECACHEDCONTENT1); /* TODO: implement test */ tr17.appendTcDetail("Not implemented."); tr17.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_useCachedContent2 */ /* Details: "Method useCachedContent(): Returns false if cached */ /* content has been set to invalid through the setUseCachedContent */ /* method" */ TestResult tr18 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_USECACHEDCONTENT2); /* TODO: implement test */ tr18.appendTcDetail("Not implemented."); tr18.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_useCachedContent3 */ /* Details: "Method useCachedContent(): Returns false if the use */ /* cached content indcator has not been set" */ TestResult tr19 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_USECACHEDCONTENT3); /* TODO: implement test */ tr19.appendTcDetail("Not implemented."); tr19.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_setUseCachedContent1 */ /* Details: "Method setUseCachedContent(boolean): If set to true, the */ /* cached content is valid " */ TestResult tr20 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_SETUSECACHEDCONTENT1); /* TODO: implement test */ tr20.appendTcDetail("Not implemented."); tr20.writeTo(writer); /* TestCase: V2EnvironmentTests_CacheControl_ApiResource_setUseCachedContent2 */ /* Details: "Method setUseCachedContent(boolean): If set to false, */ /* the cached content is invalid " */ TestResult tr21 = tcd.getTestResultFailed(V2ENVIRONMENTTESTS_CACHECONTROL_APIRESOURCE_SETUSECACHEDCONTENT2); /* TODO: implement test */ tr21.appendTcDetail("Not implemented."); tr21.writeTo(writer); }
// The tck uses only get & post requests protected void processTCKReq(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { LOGGER.entering(LOG_CLASS, "servlet entry"); PortletRequest portletReq = (PortletRequest) request.getAttribute("javax.portlet.request"); PortletResponse portletResp = (PortletResponse) request.getAttribute("javax.portlet.response"); PortletConfig portletConfig = (PortletConfig) request.getAttribute("javax.portlet.config"); long svtTid = Thread.currentThread().getId(); long reqTid = (Long) portletReq.getAttribute(THREADID_ATTR); PrintWriter writer = ((MimeResponse) portletResp).getWriter(); JSR286DispatcherReqRespTestCaseDetails tcd = new JSR286DispatcherReqRespTestCaseDetails(); // Create result objects for the tests /* TestCase: V2DispatcherReqRespTests4_SPEC2_19_IncludeServletResourceResponse_containsHeader */ /* Details: "In a target servlet of a include in the Resource phase, */ /* the method HttpServletResponse.containsHeader must return false" */ TestResult tr0 = tcd.getTestResultFailed( V2DISPATCHERREQRESPTESTS4_SPEC2_19_INCLUDESERVLETRESOURCERESPONSE_CONTAINSHEADER); try { boolean ok = response.containsHeader("Accept"); tr0.setTcSuccess(ok == false); } catch (Exception e) { tr0.appendTcDetail(e.toString()); } tr0.writeTo(writer); /* TestCase: V2DispatcherReqRespTests4_SPEC2_19_IncludeServletResourceResponse_encodeRedirectURL1 */ /* Details: "In a target servlet of a include in the Resource phase, */ /* the method HttpServletResponse.encodeRedirectURL must return null" */ TestResult tr1 = tcd.getTestResultFailed( V2DISPATCHERREQRESPTESTS4_SPEC2_19_INCLUDESERVLETRESOURCERESPONSE_ENCODEREDIRECTURL1); try { String isval = response.encodeRedirectURL("http://www.cnn.com/"); CompareUtils.stringsEqual(isval, null, tr1); } catch (Exception e) { tr1.appendTcDetail(e.toString()); } tr1.writeTo(writer); /* TestCase: V2DispatcherReqRespTests4_SPEC2_19_IncludeServletResourceResponse_encodeRedirectUrl */ /* Details: "In a target servlet of a include in the Resource phase, */ /* the method HttpServletResponse.encodeRedirectUrl must return null" */ TestResult tr2 = tcd.getTestResultFailed( V2DISPATCHERREQRESPTESTS4_SPEC2_19_INCLUDESERVLETRESOURCERESPONSE_ENCODEREDIRECTURL); try { String isval = response.encodeRedirectUrl("http://www.cnn.com/"); CompareUtils.stringsEqual(isval, null, tr2); } catch (Exception e) { tr2.appendTcDetail(e.toString()); } tr2.writeTo(writer); /* TestCase: V2DispatcherReqRespTests4_SPEC2_19_IncludeServletResourceResponse_encodeURL1 */ /* Details: "In a target servlet of a include in the Resource phase, */ /* the method HttpServletResponse.encodeURL must provide the same */ /* functionality as ResourceResponse.encodeURL" */ TestResult tr3 = tcd.getTestResultFailed( V2DISPATCHERREQRESPTESTS4_SPEC2_19_INCLUDESERVLETRESOURCERESPONSE_ENCODEURL1); try { String turl = "http://www.apache.org/"; String hval = (String) response.encodeURL(turl); String pval = (String) portletResp.encodeURL(turl); CompareUtils.stringsEqual("HttpServletResponse", hval, "ResourceResponse", pval, tr3); } catch (Exception e) { tr3.appendTcDetail(e.toString()); } tr3.writeTo(writer); /* TestCase: V2DispatcherReqRespTests4_SPEC2_19_IncludeServletResourceResponse_encodeUrl */ /* Details: "In a target servlet of a include in the Resource phase, */ /* the method HttpServletResponse.encodeUrl must provide the same */ /* functionality as ResourceResponse.encodeURL" */ TestResult tr4 = tcd.getTestResultFailed( V2DISPATCHERREQRESPTESTS4_SPEC2_19_INCLUDESERVLETRESOURCERESPONSE_ENCODEURL); try { String turl = "http://www.apache.org/"; String hval = (String) response.encodeUrl(turl); String pval = (String) portletResp.encodeURL(turl); CompareUtils.stringsEqual("HttpServletResponse", hval, "ResourceResponse", pval, tr4); } catch (Exception e) { tr4.appendTcDetail(e.toString()); } tr4.writeTo(writer); /* TestCase: V2DispatcherReqRespTests4_SPEC2_19_IncludeServletResourceResponse_getBufferSize */ /* Details: "In a target servlet of a include in the Resource phase, */ /* the method HttpServletResponse.getBufferSize must provide the same */ /* functionality as ResourceResponse.getBufferSize" */ TestResult tr5 = tcd.getTestResultFailed( V2DISPATCHERREQRESPTESTS4_SPEC2_19_INCLUDESERVLETRESOURCERESPONSE_GETBUFFERSIZE); try { int hval = response.getBufferSize(); int pval = ((ResourceResponse) portletResp).getBufferSize(); String str = "Value " + hval + " from " + "HttpServletResponse" + " does not equal value " + pval + " + ResourceResponse"; if (hval != pval) { tr5.appendTcDetail(str); } tr5.setTcSuccess(hval == pval); } catch (Exception e) { tr5.appendTcDetail(e.toString()); } tr5.writeTo(writer); /* TestCase: V2DispatcherReqRespTests4_SPEC2_19_IncludeServletResourceResponse_getCharacterEncoding */ /* Details: "In a target servlet of a include in the Resource phase, */ /* the method HttpServletResponse.getCharacterEncoding must provide */ /* the same functionality as ResourceResponse.getCharacterEncoding" */ TestResult tr6 = tcd.getTestResultFailed( V2DISPATCHERREQRESPTESTS4_SPEC2_19_INCLUDESERVLETRESOURCERESPONSE_GETCHARACTERENCODING); try { String hval = response.getCharacterEncoding(); String pval = ((ResourceResponse) portletResp).getCharacterEncoding(); CompareUtils.stringsEqual("HttpServletResponse", hval, "ResourceResponse", pval, tr6); } catch (Exception e) { tr6.appendTcDetail(e.toString()); } tr6.writeTo(writer); /* TestCase: V2DispatcherReqRespTests4_SPEC2_19_IncludeServletResourceResponse_getContentType */ /* Details: "In a target servlet of a include in the Resource phase, */ /* the method HttpServletResponse.getContentType must provide the */ /* same functionality as ResourceResponse.getContentType" */ TestResult tr7 = tcd.getTestResultFailed( V2DISPATCHERREQRESPTESTS4_SPEC2_19_INCLUDESERVLETRESOURCERESPONSE_GETCONTENTTYPE); try { String hval = response.getContentType(); String pval = ((ResourceResponse) portletResp).getContentType(); CompareUtils.stringsEqual("HttpServletResponse", hval, "ResourceResponse", pval, tr7); } catch (Exception e) { tr7.appendTcDetail(e.toString()); } tr7.writeTo(writer); /* TestCase: V2DispatcherReqRespTests4_SPEC2_19_IncludeServletResourceResponse_getLocale */ /* Details: "In a target servlet of a include in the Resource phase, */ /* the method HttpServletResponse.getLocale must provide the same */ /* functionality as ResourceResponse.getLocale" */ TestResult tr8 = tcd.getTestResultFailed( V2DISPATCHERREQRESPTESTS4_SPEC2_19_INCLUDESERVLETRESOURCERESPONSE_GETLOCALE); try { Locale hl = response.getLocale(); Locale pl = ((MimeResponse) portletResp).getLocale(); String hval = hl.getDisplayName(); String pval = pl.getDisplayName(); CompareUtils.stringsEqual("HttpServletResponse", hval, "ResourceResponse", pval, tr8); } catch (Exception e) { tr8.appendTcDetail(e.toString()); } tr8.writeTo(writer); /* TestCase: V2DispatcherReqRespTests4_SPEC2_19_IncludeServletResourceResponse_isCommitted */ /* Details: "In a target servlet of a include in the Resource phase, */ /* the method HttpServletResponse.isCommitted must provide the same */ /* functionality as ResourceResponse.isCommitted" */ TestResult tr9 = tcd.getTestResultFailed( V2DISPATCHERREQRESPTESTS4_SPEC2_19_INCLUDESERVLETRESOURCERESPONSE_ISCOMMITTED); try { boolean hval = response.isCommitted(); boolean pval = ((ResourceResponse) portletResp).isCommitted(); String str = "Value " + hval + " from " + "HttpServletResponse" + " does not equal value " + pval + " + ResourceResponse"; if (hval != pval) { tr9.appendTcDetail(str); } tr9.setTcSuccess(hval == pval); } catch (Exception e) { tr9.appendTcDetail(e.toString()); } tr9.writeTo(writer); }
@Override public void render(RenderRequest portletReq, RenderResponse portletResp) throws PortletException, IOException { LOGGER.entering(LOG_CLASS, "main portlet render entry"); long tid = Thread.currentThread().getId(); portletReq.setAttribute(THREADID_ATTR, tid); PrintWriter writer = portletResp.getWriter(); PortletSession ps = portletReq.getPortletSession(); String msg = (String) ps.getAttribute( RESULT_ATTR_PREFIX + "DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse", APPLICATION_SCOPE); if (msg != null) { writer.write("<p>" + msg + "</p><br/>\n"); ps.removeAttribute( RESULT_ATTR_PREFIX + "DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse", APPLICATION_SCOPE); } /* TestCase: V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_containsHeader */ /* Details: "In a target jsp of a include in the Action phase, the */ /* method HttpServletResponse.containsHeader must return false" */ { PortletURL aurl = portletResp.createActionURL(); aurl.setParameters(portletReq.getPrivateParameterMap()); TestButton tb = new TestButton( "V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_containsHeader", aurl); tb.writeTo(writer); } /* TestCase: V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_encodeRedirectURL1 */ /* Details: "In a target jsp of a include in the Action phase, the */ /* method HttpServletResponse.encodeRedirectURL must return null" */ { PortletURL aurl = portletResp.createActionURL(); aurl.setParameters(portletReq.getPrivateParameterMap()); TestButton tb = new TestButton( "V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_encodeRedirectURL1", aurl); tb.writeTo(writer); } /* TestCase: V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_encodeRedirectUrl */ /* Details: "In a target jsp of a include in the Action phase, the */ /* method HttpServletResponse.encodeRedirectUrl must return null" */ { PortletURL aurl = portletResp.createActionURL(); aurl.setParameters(portletReq.getPrivateParameterMap()); TestButton tb = new TestButton( "V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_encodeRedirectUrl", aurl); tb.writeTo(writer); } /* TestCase: V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_encodeURL1 */ /* Details: "In a target jsp of a include in the Action phase, the */ /* method HttpServletResponse.encodeURL must provide the same */ /* functionality as ActionResponse.encodeURL" */ { PortletURL aurl = portletResp.createActionURL(); aurl.setParameters(portletReq.getPrivateParameterMap()); TestButton tb = new TestButton( "V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_encodeURL1", aurl); tb.writeTo(writer); } /* TestCase: V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_encodeUrl */ /* Details: "In a target jsp of a include in the Action phase, the */ /* method HttpServletResponse.encodeUrl must provide the same */ /* functionality as ActionResponse.encodeURL" */ { PortletURL aurl = portletResp.createActionURL(); aurl.setParameters(portletReq.getPrivateParameterMap()); TestButton tb = new TestButton( "V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_encodeUrl", aurl); tb.writeTo(writer); } /* TestCase: V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_getBufferSize */ /* Details: "In a target jsp of a include in the Action phase, the */ /* method HttpServletResponse.getBufferSize must return 0" */ { PortletURL aurl = portletResp.createActionURL(); aurl.setParameters(portletReq.getPrivateParameterMap()); TestButton tb = new TestButton( "V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_getBufferSize", aurl); tb.writeTo(writer); } /* TestCase: V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_getCharacterEncoding */ /* Details: "In a target jsp of a include in the Action phase, the */ /* method HttpServletResponse.getCharacterEncoding must return null" */ { PortletURL aurl = portletResp.createActionURL(); aurl.setParameters(portletReq.getPrivateParameterMap()); TestButton tb = new TestButton( "V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_getCharacterEncoding", aurl); tb.writeTo(writer); } /* TestCase: V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_getContentType */ /* Details: "In a target jsp of a include in the Action phase, the */ /* method HttpServletResponse.getContentType must return null" */ { PortletURL aurl = portletResp.createActionURL(); aurl.setParameters(portletReq.getPrivateParameterMap()); TestButton tb = new TestButton( "V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_getContentType", aurl); tb.writeTo(writer); } /* TestCase: V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_getLocale */ /* Details: "In a target jsp of a include in the Action phase, the */ /* method HttpServletResponse.getLocale must return null" */ { PortletURL aurl = portletResp.createActionURL(); aurl.setParameters(portletReq.getPrivateParameterMap()); TestButton tb = new TestButton( "V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_getLocale", aurl); tb.writeTo(writer); } /* TestCase: V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_isCommitted */ /* Details: "In a target jsp of a include in the Action phase, the */ /* method HttpServletResponse.isCommitted must return true" */ { PortletURL aurl = portletResp.createActionURL(); aurl.setParameters(portletReq.getPrivateParameterMap()); TestButton tb = new TestButton( "V2DispatcherReqRespTests3_SPEC2_19_IncludeJSPActionResponse_isCommitted", aurl); tb.writeTo(writer); } }
private void log(final String message) { LOGGER.fine( String.format( "[%d] Timer %s: %s", Thread.currentThread().getId(), this.timerName, message)); }