From fdf9eb5df601c9f0d8e57f19cc20ec0dfae56aa8 Mon Sep 17 00:00:00 2001 From: Richard Millet Date: Thu, 19 Feb 2009 00:50:38 +0000 Subject: [PATCH] Adding debugging/trace code to isolate KSS vs CSpace wiki differences in service contracts. --- .../wiki_to_java/src/main/java/CSpace.java | 8 ++-- .../student/contract/ContractReader.java | 2 +- .../contract/MessageContractReader.java | 41 ++++++++++++++++++- .../kuali/student/mojo/KsContractMojo.java | 34 +++++++++++++-- 4 files changed, 75 insertions(+), 10 deletions(-) diff --git a/sandbox/kss/wiki_to_java/src/main/java/CSpace.java b/sandbox/kss/wiki_to_java/src/main/java/CSpace.java index bdfd1724b..8a6852de3 100644 --- a/sandbox/kss/wiki_to_java/src/main/java/CSpace.java +++ b/sandbox/kss/wiki_to_java/src/main/java/CSpace.java @@ -1,5 +1,5 @@ /** - * CSpace.java + * */ import java.io.File; @@ -29,8 +29,8 @@ public class CSpace { // the URL to the contract to transform URL contractURL = null; try { -// contractURL = new URL("https://test.kuali.org/confluence/display/KULSTU/Authentication+Service"); - contractURL = new URL("http://wiki.collectionspace.org/display/collectionspace/wikitojavatestservice"); + contractURL = new URL("https://test.kuali.org/confluence/display/KULSTU/Authentication+Service"); +// contractURL = new URL("http://wiki.collectionspace.org/display/collectionspace/wikitojavatestservice"); // } catch (MalformedURLException e) { @@ -51,7 +51,7 @@ public class CSpace { new File("C:/dev/src/kss/maven-kscontract-plugin/maven-kscontract-plugin/src/main/resources/messageInterface.xml"); // the session ID token - String jsessionId = "53F14F3833498C0A43DA87B273D1DDB7.Kuali3_1Engine"; + String jsessionId = "8B705ECBA5854E818026D31FC4A38C1A.Kuali3_1Engine"; diff --git a/sandbox/kss/wiki_to_java/src/main/java/org/kuali/student/contract/ContractReader.java b/sandbox/kss/wiki_to_java/src/main/java/org/kuali/student/contract/ContractReader.java index c64fecc91..1c23f0e1a 100644 --- a/sandbox/kss/wiki_to_java/src/main/java/org/kuali/student/contract/ContractReader.java +++ b/sandbox/kss/wiki_to_java/src/main/java/org/kuali/student/contract/ContractReader.java @@ -71,7 +71,7 @@ public class ContractReader { } } else { // if (line.contains("Capabilities")) { - if (Pattern.matches(".*\\s*Capabilities\\s*.*", line) == true) { + if (line.matches(".*\\s*Capabilities\\s*.*") == true) { inContract = false; } else { builder.append(line); diff --git a/sandbox/kss/wiki_to_java/src/main/java/org/kuali/student/contract/MessageContractReader.java b/sandbox/kss/wiki_to_java/src/main/java/org/kuali/student/contract/MessageContractReader.java index 4565f226e..ee4fbc9ab 100644 --- a/sandbox/kss/wiki_to_java/src/main/java/org/kuali/student/contract/MessageContractReader.java +++ b/sandbox/kss/wiki_to_java/src/main/java/org/kuali/student/contract/MessageContractReader.java @@ -42,6 +42,7 @@ public class MessageContractReader extends ContractReader { // read each line and fix any open tags, bad attributes, and '&' symbols // without a ';' + boolean inContract = false; while ((line = reader.readLine()) != null) { // Check if the current line has a tag that does not end yet @@ -54,16 +55,52 @@ public class MessageContractReader extends ContractReader { } } +// System.err.println("Line before:" + line); // BEFORE + // Do some regex to clean up the tags line = line.replaceAll("border=0", "border=\"0\""); line = line.replaceAll("([^:])nowrap([^=])", "$1nowrap=\"true\"$2"); line = line.replaceAll("&(\\w+[^;])", "$1"); line = line.replaceAll("(<(META|meta|br|hr|col|link|img|input)(\\s+[\\w-]+\\s*=\\s*(\"([^\"]*)\"|'([^']*)'))*\\s*)>", "$1/>"); line = line.replaceAll("
", "
"); - builder.append(line + "\n"); + +// System.err.println("Line after :" + line); // AFTER +// System.err.println(); + + if (line.contains("Example")) { + inContract = false; + builder.append("
" + "\n"); // end of
+ builder.append("
" + "\n"); // end of
+ builder.append("
" + "\n"); // end of
+ builder.append("" + "\n"); // end of + builder.append("" + "\n"); // end of + } + + if (line.contains("id=\"structureMetaTable\"")) { + inContract = true; + // Add , , and main
nodes + builder.append("" + "\n"); + builder.append("" + "\n"); + builder.append("
" + "\n"); + + // Add
for content, and
for wiki content + builder.append("
" + "\n"); + builder.append("
" + "\n"); + } + + if (inContract == true) { + builder.append(line + "\n"); +// System.out.println(line); + } + + } + System.out.println(builder.toString()); + return builder.toString(); + + } - } + diff --git a/sandbox/kss/wiki_to_java/src/main/java/org/kuali/student/mojo/KsContractMojo.java b/sandbox/kss/wiki_to_java/src/main/java/org/kuali/student/mojo/KsContractMojo.java index afbde3120..b5b6d6960 100644 --- a/sandbox/kss/wiki_to_java/src/main/java/org/kuali/student/mojo/KsContractMojo.java +++ b/sandbox/kss/wiki_to_java/src/main/java/org/kuali/student/mojo/KsContractMojo.java @@ -150,6 +150,12 @@ public class KsContractMojo extends AbstractMojo { || "integer".equals(param.toLowerCase())) { return; } + + //rem + if (param.equals("objectStructure")) { + System.out.println(); + } + ContractReader contract; try { contract = new MessageContractReader(url, jsessionId); @@ -161,12 +167,25 @@ public class KsContractMojo extends AbstractMojo { // add this url to the already oarsed list alreadyParsedUrlSet.add(url); +// System.out.println("URL:" + url.toString()); +// System.out.println(contract.getContractText()); + // recurse through the node to NodeList nodeList = contract.getDocument().getElementsByTagName( "td"); for (int i = 0, iCnt = nodeList.getLength(); i < iCnt; i++) { Node node = nodeList.item(i); NamedNodeMap nodeMap = node.getAttributes(); + System.err.println("Node=" + i + ":" + node.toString()); + + //rem + if (nodeMap != null) { + if (nodeMap.getNamedItem("class") != null) { + String nodeValue = nodeMap.getNamedItem("class").getNodeValue(); + System.out.println("Node value: " + i + ":" + nodeValue); + } + } + if (nodeMap != null && nodeMap.getNamedItem("class") != null && "structType".equals(nodeMap.getNamedItem("class") @@ -193,6 +212,7 @@ public class KsContractMojo extends AbstractMojo { "Error loading page for Type '" + param + "'" + e.getMessage()); } catch (ParserConfigurationException e) { + e.printStackTrace(); getLog().warn( "Error parsing page for Type '" + param + "'" + e.getMessage()); @@ -200,6 +220,8 @@ public class KsContractMojo extends AbstractMojo { getLog().warn( "Error parsing page for Type '" + param + "'" + e.getMessage()); + } finally { + System.err.println(); } } @@ -220,8 +242,8 @@ public class KsContractMojo extends AbstractMojo { try { String urlString = node.getFirstChild().getAttributes() .getNamedItem("href").getNodeValue(); - System.out.println("urlString:" + urlString); - System.out.println("contractURL:" + contractURL); +// System.out.println("urlString:" + urlString); +// System.out.println("contractURL:" + contractURL); if (!urlString.startsWith("http") && !urlString.startsWith("file")) { urlString = contractURL.getProtocol()+"://"+contractURL.getHost() @@ -258,7 +280,11 @@ public class KsContractMojo extends AbstractMojo { Result result = new StreamResult(new File(outputDirectory, param .substring(0, 1).toUpperCase() + param.substring(1) + ".java")); - transformer.transform(contract.getStreamSource(), result); + + StreamSource xmlSource = contract.getStreamSource(); + transformer.transform(xmlSource, result); + + System.out.println(result.toString()); } catch (TransformerConfigurationException e) { // TODO Auto-generated catch block e.printStackTrace(); @@ -268,6 +294,8 @@ public class KsContractMojo extends AbstractMojo { } catch (TransformerException e) { // TODO Auto-generated catch block e.printStackTrace(); + } finally { + System.out.println(); } } -- 2.47.3