From 71c522b26befe04fca42b9098343ef6e5bec539f Mon Sep 17 00:00:00 2001 From: sigonasr2 Date: Sat, 20 Aug 2022 12:22:23 -0500 Subject: [PATCH] Restore old sigPlace server code Co-authored-by: sigonasr2 --- bin/sigPlace.class | Bin 16630 -> 17561 bytes bin/sigServer.class | Bin 16249 -> 16858 bytes sigPlace.jar | Bin 68679 -> 69533 bytes sigPlace.java | 438 ++++++++++++++++++++++---------------------- 4 files changed, 219 insertions(+), 219 deletions(-) diff --git a/bin/sigPlace.class b/bin/sigPlace.class index 1b6dcb66df6f87772c3c4f8b6da358447ea6d2e8..b21d2c14269d1fc61a8b9986620599f77bd44413 100644 GIT binary patch literal 17561 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 o=Y%{V&GPiqklRyk=VMr!qWHJ+HCTz8? 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 diff --git a/bin/sigServer.class b/bin/sigServer.class index 99337b00529e3f7c981d96c5b2f4df3d2f2106e0..569748a42c01d77a4db2fb38dfa53d5e88a9060a 100644 GIT binary patch literal 16858 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 Q0Cd?w(+|au#j9leKd`>SoB#j- literal 16249 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 diff --git a/sigPlace.jar b/sigPlace.jar index c9fe6cb7b3d051fcec860d0e7289764d50469801..e19c70bdc82ed90fc4980b514eb2f11c1618dd76 100644 GIT binary patch delta 18023 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 O+a)msXcQdS_WuFDgm~Nl delta 17158 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 data; try { data = Files.readAllLines(secretFile); @@ -256,256 +256,256 @@ public class sigPlace { System.out.println("\nStarting web server..."); new sigServer(); } + } - private static String JSON(HashMap testMap) { - StringBuilder sb = new StringBuilder(); - String temp = testMap.toString(); - if (temp.charAt(0)=='{') { - sb.append("{"); - int marker=1; - boolean ending=false; - while (marker testMap) { + StringBuilder sb = new StringBuilder(); + String temp = testMap.toString(); + if (temp.charAt(0)=='{') { + sb.append("{"); + int marker=1; + boolean ending=false; + while (marker items) { - while (items.hasNext()) { - Path f = items.next(); - System.out.println(" Found "+f.getFileName()); - if (Files.isRegularFile(f)) { - try { + return sb.toString(); + } + private static void ParseArticleFiles(Iterator items) { + while (items.hasNext()) { + Path f = items.next(); + System.out.println(" Found "+f.getFileName()); + if (Files.isRegularFile(f)) { + try { - System.out.println(" Preparing "+f.getFileName()); + System.out.println(" Preparing "+f.getFileName()); - List content = Files.readAllLines(f); - if (isHTMLFile(f)) { - content.addAll(0,Files.readAllLines(ops.get("%NAVBAR"))); - content.addAll(0,Files.readAllLines(ops.get("%DEFAULT"))); - content.addAll(Files.readAllLines(ops.get("%FOOTER"))); - } + List content = Files.readAllLines(f); + if (isHTMLFile(f)) { + content.addAll(0,Files.readAllLines(ops.get("%NAVBAR"))); + content.addAll(0,Files.readAllLines(ops.get("%DEFAULT"))); + content.addAll(Files.readAllLines(ops.get("%FOOTER"))); + } - System.out.println(" Parsing "+f.getFileName()); - for (int i=0;i0&&(isHTMLFile(f)||isArticleFile(f))) { - if (!inCodeBlock) { - if (s.trim().equals("
")) {
-                                        //System.out.println("Inside 
");
-                                        inCodeBlock=true;
-                                        storedCodeBlock="";
-                                        s=s.substring(0,s.indexOf("
"));
-                                    }
+                    System.out.println("  Parsing "+f.getFileName());
+                    for (int i=0;i0&&(isHTMLFile(f)||isArticleFile(f))) {
+                            if (!inCodeBlock) {
+                                if (s.trim().equals("
")) {
+                                    //System.out.println("Inside 
");
+                                    inCodeBlock=true;
+                                    storedCodeBlock="";
+                                    s=s.substring(0,s.indexOf("
"));
                                 }
-                                if (inCodeBlock&&s.trim().equals("
")) { - inCodeBlock=false; - boolean keyword=false; - boolean inString=false; - boolean inComment=false; - boolean inMultiLineComment=false; - char stringChar=' '; - boolean canBeNumericalConstant=false; - int lengthOfConstant=0; - storedCodeBlock+=s.substring(0,s.indexOf("
")); - storedCodeBlock=storedCodeBlock.replaceAll(Pattern.quote("<"),"\2"); - storedCodeBlock+="
"; - int startPos=0; - String endText=s.substring(s.indexOf("
")+"
".length(),s.length()); - s=""; - for (int j=0;j")) { + inCodeBlock=false; + boolean keyword=false; + boolean inString=false; + boolean inComment=false; + boolean inMultiLineComment=false; + char stringChar=' '; + boolean canBeNumericalConstant=false; + int lengthOfConstant=0; + storedCodeBlock+=s.substring(0,s.indexOf("
")); + storedCodeBlock=storedCodeBlock.replaceAll(Pattern.quote("<"),"\2"); + storedCodeBlock+=""; + int startPos=0; + String endText=s.substring(s.indexOf("")+"".length(),s.length()); + s=""; + for (int j=0;j"; + startPos=j+1; + } + if (!inComment&&!inMultiLineComment&&(j>0&&storedCodeBlock.charAt(j-1)!='\\'&&(!inString&&(storedCodeBlock.charAt(j)=='"'||storedCodeBlock.charAt(j)=='\'')||inString&&(storedCodeBlock.charAt(j)==stringChar)))) { + inString=!inString; + if (inString) { + stringChar=storedCodeBlock.charAt(j); + s+=SPAN("string")+stringChar; + } else { + s+=stringChar; s+=""; - } else - if (storedCodeBlock.charAt(j)=='\n'&&inComment) { - inComment=false; - s+=SPAN("comment")+storedCodeBlock.substring(startPos,j)+""; startPos=j+1; } - if (!inComment&&!inMultiLineComment&&(j>0&&storedCodeBlock.charAt(j-1)!='\\'&&(!inString&&(storedCodeBlock.charAt(j)=='"'||storedCodeBlock.charAt(j)=='\'')||inString&&(storedCodeBlock.charAt(j)==stringChar)))) { - inString=!inString; - if (inString) { - stringChar=storedCodeBlock.charAt(j); - s+=SPAN("string")+stringChar; + } else + if (!inString) { + if (canBeNumericalConstant&&validNumericalConstantCharacters(lengthOfConstant, j)) { + lengthOfConstant++; + //System.out.println("Length of Constant now "+lengthOfConstant); + } + if (j>0&&storedCodeBlock.charAt(j)=='/'&&storedCodeBlock.charAt(j+1)=='*'||inMultiLineComment) { + if (!inMultiLineComment) { + inMultiLineComment=true; } else { - s+=stringChar; - s+=""; - startPos=j+1; + if (storedCodeBlock.charAt(j-1)=='*'&&storedCodeBlock.charAt(j)=='/') { + inMultiLineComment=false; + s+=SPAN("comment")+storedCodeBlock.substring(startPos,j)+storedCodeBlock.charAt(j)+""; + startPos=j+1; + } } + //Stops further execution since we're in a comment. } else - if (!inString) { - if (canBeNumericalConstant&&validNumericalConstantCharacters(lengthOfConstant, j)) { - lengthOfConstant++; - //System.out.println("Length of Constant now "+lengthOfConstant); + if (j>0&&storedCodeBlock.charAt(j)=='/'&&storedCodeBlock.charAt(j+1)=='/'||inComment) { + if (!inComment) { + inComment=true; } - if (j>0&&storedCodeBlock.charAt(j)=='/'&&storedCodeBlock.charAt(j+1)=='*'||inMultiLineComment) { - if (!inMultiLineComment) { - inMultiLineComment=true; - } else { - if (storedCodeBlock.charAt(j-1)=='*'&&storedCodeBlock.charAt(j)=='/') { - inMultiLineComment=false; - s+=SPAN("comment")+storedCodeBlock.substring(startPos,j)+storedCodeBlock.charAt(j)+""; - startPos=j+1; - } - } - //Stops further execution since we're in a comment. - } else - if (j>0&&storedCodeBlock.charAt(j)=='/'&&storedCodeBlock.charAt(j+1)=='/'||inComment) { - if (!inComment) { - inComment=true; - } - //Stops further execution since we're in a comment. - } else - if (canBeNumericalConstant&&lengthOfConstant>0&&!(validNumericalConstantCharacters(lengthOfConstant, j))) { - s+=SPAN("number")+storedCodeBlock.substring(startPos,j)+""+storedCodeBlock.charAt(j); - //System.out.println("Setting "+storedCodeBlock.substring(startPos,j)+storedCodeBlock.charAt(j)); - lengthOfConstant=0; - canBeNumericalConstant=false; - startPos=j+1; - } else - if (!canBeNumericalConstant&&storedCodeBlock.charAt(j)=='.') { - //Previous section was a member. - s+=SPAN("class")+storedCodeBlock.substring(startPos,j)+""+storedCodeBlock.charAt(j); - startPos=j+1; - } else - if (j>3&&storedCodeBlock.substring(j-3,j+1).equals("true")&&!isAlphanumeric(j-4)&&!isAlphanumeric(j+1)) { - s+=SPAN("number")+storedCodeBlock.substring(startPos,j)+storedCodeBlock.charAt(j)+""; - startPos=j+1; - } else - if (j>4&&storedCodeBlock.substring(j-4,j+1).equals("false")&&!isAlphanumeric(j-5)&&!isAlphanumeric(j+1)) { - s+=SPAN("number")+storedCodeBlock.substring(startPos,j)+storedCodeBlock.charAt(j)+""; - startPos=j+1; - } else - if (storedCodeBlock.charAt(j)=='(') { - s+=SPAN("function")+storedCodeBlock.substring(startPos,j)+""+storedCodeBlock.charAt(j); - startPos=j+1; - } else - if (j>0&&isAlphanumeric(j-1) && storedCodeBlock.charAt(j)==' '&&storedCodeBlock.charAt(j-1)!=' ') { - //Previous section was a keyword. - keyword=true; - s+=SPAN("keyword")+storedCodeBlock.substring(startPos,j)+""+storedCodeBlock.charAt(j); - startPos=j+1; - } else - if (j>0&&isAlphanumeric(j-1) && (storedCodeBlock.charAt(j)==';'||storedCodeBlock.charAt(j)==':')) { - //Previous section was a keyword. - //keyword=true; - s+=SPAN("keyword")+storedCodeBlock.substring(startPos,j)+""+storedCodeBlock.charAt(j); - startPos=j+1; - } else - if (keyword&&!(storedCodeBlock.charAt(j)=='_'||storedCodeBlock.charAt(j)>='0'&&storedCodeBlock.charAt(j)<='9'||storedCodeBlock.charAt(j)>='A'&&storedCodeBlock.charAt(j)<='Z'||storedCodeBlock.charAt(j)>='a'&&storedCodeBlock.charAt(j)<='z'||storedCodeBlock.charAt(j)==' ')) { - keyword=false; - s+=SPAN("variable")+storedCodeBlock.substring(startPos,j)+""+storedCodeBlock.charAt(j); - startPos=j+1; - } else - if (!isAlphanumeric(j)){ - if (startPos0&&!(validNumericalConstantCharacters(lengthOfConstant, j))) { + s+=SPAN("number")+storedCodeBlock.substring(startPos,j)+""+storedCodeBlock.charAt(j); + //System.out.println("Setting "+storedCodeBlock.substring(startPos,j)+storedCodeBlock.charAt(j)); + lengthOfConstant=0; + canBeNumericalConstant=false; + startPos=j+1; + } else + if (!canBeNumericalConstant&&storedCodeBlock.charAt(j)=='.') { + //Previous section was a member. + s+=SPAN("class")+storedCodeBlock.substring(startPos,j)+""+storedCodeBlock.charAt(j); + startPos=j+1; + } else + if (j>3&&storedCodeBlock.substring(j-3,j+1).equals("true")&&!isAlphanumeric(j-4)&&!isAlphanumeric(j+1)) { + s+=SPAN("number")+storedCodeBlock.substring(startPos,j)+storedCodeBlock.charAt(j)+""; + startPos=j+1; + } else + if (j>4&&storedCodeBlock.substring(j-4,j+1).equals("false")&&!isAlphanumeric(j-5)&&!isAlphanumeric(j+1)) { + s+=SPAN("number")+storedCodeBlock.substring(startPos,j)+storedCodeBlock.charAt(j)+""; + startPos=j+1; + } else + if (storedCodeBlock.charAt(j)=='(') { + s+=SPAN("function")+storedCodeBlock.substring(startPos,j)+""+storedCodeBlock.charAt(j); + startPos=j+1; + } else + if (j>0&&isAlphanumeric(j-1) && storedCodeBlock.charAt(j)==' '&&storedCodeBlock.charAt(j-1)!=' ') { + //Previous section was a keyword. + keyword=true; + s+=SPAN("keyword")+storedCodeBlock.substring(startPos,j)+""+storedCodeBlock.charAt(j); + startPos=j+1; + } else + if (j>0&&isAlphanumeric(j-1) && (storedCodeBlock.charAt(j)==';'||storedCodeBlock.charAt(j)==':')) { + //Previous section was a keyword. + //keyword=true; + s+=SPAN("keyword")+storedCodeBlock.substring(startPos,j)+""+storedCodeBlock.charAt(j); + startPos=j+1; + } else + if (keyword&&!(storedCodeBlock.charAt(j)=='_'||storedCodeBlock.charAt(j)>='0'&&storedCodeBlock.charAt(j)<='9'||storedCodeBlock.charAt(j)>='A'&&storedCodeBlock.charAt(j)<='Z'||storedCodeBlock.charAt(j)>='a'&&storedCodeBlock.charAt(j)<='z'||storedCodeBlock.charAt(j)==' ')) { + keyword=false; + s+=SPAN("variable")+storedCodeBlock.substring(startPos,j)+""+storedCodeBlock.charAt(j); + startPos=j+1; + } else + if (!isAlphanumeric(j)){ + if (startPos='0'&&storedCodeBlock.charAt(j)<='9')) { - canBeNumericalConstant=false; - } - if (!canBeNumericalConstant&&!isAlphanumeric(j)) { - canBeNumericalConstant=true; - lengthOfConstant=0; - //System.out.println("Found "+storedCodeBlock.charAt(j)+", can be numeric..."); - } + } else { + s+=storedCodeBlock.charAt(j); + startPos=j+1; } - for (int j=0;j='0'&&storedCodeBlock.charAt(j)<='9')) { + canBeNumericalConstant=false; } - s="
"+s;
-                                    s+=endText;
-                                    endPreLine=true;
-                                    //System.out.println("Stored code block: "+storedCodeBlock);
-                                } else 
-                                if (inCodeBlock) {
-                                    storedCodeBlock+=s+"\n";
-                                    s=" ";
-                                }
-                            }
-                            if (s.length()>0&&isArticleFile(f)&&!inCodeBlock) {
-                                //Check for markdown pieces.
-                                if (s.charAt(0)=='-') {
-                                    //Start of a title piece.
-                                    s=s.replace("-",map.get("$TITLE_CONTENT_START"));
-                                    s=s+map.get("$TITLE_CONTENT_END").replace("%ID%","id=\"content_"+f+"\"");
-                                    //Use ⤈ if there's more text to be shown than can fit.
-                                } else
-                                if (s.startsWith("===")) {
-                                    s=map.get("$CONTENT_END")+map.get("$DATE_CONTENT_START")+s.replace("===","")+map.get("$CONTENT_END")+"%CONDITIONAL_EXPAND%"+map.get("$CONTENT_END");
-                                } else 
-                                if (s.charAt(0)==':') {
-                                    //Image with caption.
-                                    //Format:
-                                    //:,,,
-                                    String[] splitter = s.split(Pattern.quote(","));
-                                    StringBuilder captionText = new StringBuilder(splitter[3]);
-                                    for (int j=4;j
"+captionText.toString()+"
"; - } else { - //It's regular content, so add paragraphs. - s="

\n"+s+"\n

"; } - } else { - if (s.length()==0&&isArticleFile(f)&&!inCodeBlock) { - s="
"; //Setup a line break here. + for (int j=0;j0&&isArticleFile(f)&&!inCodeBlock) { + //Check for markdown pieces. + if (s.charAt(0)=='-') { + //Start of a title piece. + s=s.replace("-",map.get("$TITLE_CONTENT_START")); + s=s+map.get("$TITLE_CONTENT_END").replace("%ID%","id=\"content_"+f+"\""); + //Use ⤈ if there's more text to be shown than can fit. + } else + if (s.startsWith("===")) { + s=map.get("$CONTENT_END")+map.get("$DATE_CONTENT_START")+s.replace("===","")+map.get("$CONTENT_END")+"%CONDITIONAL_EXPAND%"+map.get("$CONTENT_END"); + } else + if (s.charAt(0)==':') { + //Image with caption. + //Format: + //:,,, + String[] splitter = s.split(Pattern.quote(",")); + StringBuilder captionText = new StringBuilder(splitter[3]); + for (int j=4;j
"+captionText.toString()+"
"; } else { - content.set(i,s); + //It's regular content, so add paragraphs. + s="

\n"+s+"\n

"; + } + } else { + if (s.length()==0&&isArticleFile(f)&&!inCodeBlock) { + s="
"; //Setup a line break here. + } + } + if (!endPreLine) { + for (String key : map.keySet()) { + s=s.replaceAll(Pattern.quote(key),map.get(key)); } } + if (s.trim().length()==0) { + content.remove(i--); + } else { + content.set(i,s); + } + } - System.out.println(" Writing to "+f.toAbsolutePath()); + System.out.println(" Writing to "+f.toAbsolutePath()); - Files.write(f, content, Charset.defaultCharset(),StandardOpenOption.CREATE,StandardOpenOption.TRUNCATE_EXISTING,StandardOpenOption.WRITE); - - System.out.println(" "+f.getFileName() + " conversion complete!"); + Files.write(f, content, Charset.defaultCharset(),StandardOpenOption.CREATE,StandardOpenOption.TRUNCATE_EXISTING,StandardOpenOption.WRITE); + + System.out.println(" "+f.getFileName() + " conversion complete!"); - } catch (IOException e) { - e.printStackTrace(); - } + } catch (IOException e) { + e.printStackTrace(); } - } */ - } + } + } } private static void populateDatabase() { Iterator files;