From d6b9db7926af4dc6d7df5af55d261731bd623c23 Mon Sep 17 00:00:00 2001 From: "David A. Madore" Date: Fri, 10 Oct 2014 21:21:14 +0200 Subject: Introduce a WeblogLink class to refactor a lot of code on how links are written. --- org/madore/damlengine/WeblogRSS.java | 41 ++++++++++++++++-------------------- 1 file changed, 18 insertions(+), 23 deletions(-) (limited to 'org/madore/damlengine/WeblogRSS.java') diff --git a/org/madore/damlengine/WeblogRSS.java b/org/madore/damlengine/WeblogRSS.java index 0f3b296..85d9fc0 100644 --- a/org/madore/damlengine/WeblogRSS.java +++ b/org/madore/damlengine/WeblogRSS.java @@ -93,31 +93,26 @@ public final class WeblogRSS { itemsSeq.appendChild(rssDoc.createTextNode("\n")); while ( selRes.next() ) { - int id = selRes.getInt(1); - String date = selRes.getString(2); - String cdate = selRes.getString(3); - String lang = selRes.getString(4); - String doSinglePage = selRes.getString(5); - String title = selRes.getString(6); - String contentXml = selRes.getString(7); - Matcher matcher = Pattern.compile("^(\\d{4})-(\\d{2})-(\\d{2})$").matcher(date); + final int id = selRes.getInt(1); + final String date = selRes.getString(2); + final String cdate = selRes.getString(3); + final String lang = selRes.getString(4); + final String doSinglePage = selRes.getString(5); + final String title = selRes.getString(6); + final String contentXml = selRes.getString(7); + final Matcher matcher = Pattern.compile("^(\\d{4})-(\\d{2})-(\\d{2})$").matcher(date); if ( ! matcher.matches() ) throw new IllegalArgumentException("entry "+id+" has badly formed date"); - String yearStr = matcher.group(1); - String monthStr = matcher.group(2); - // String dayStr = matcher.group(3); - String numberStr = String.format("%04d",id); - String aboutUri = weblogBaseURI - + "#d." + date + "." + numberStr; - String linkUri; - if ( doSinglePage == null ) - linkUri = weblogBaseURI - + yearStr + "-" + monthStr + ".html" - + "#d." + date + "." + numberStr; - else - linkUri = weblogBaseURI - + date + "-" + doSinglePage + ".html" - + "#d." + date + "." + numberStr; + final String yearStr = matcher.group(1); + final String monthStr = matcher.group(2); + final String dayStr = matcher.group(3); + final String numberStr = String.format("%04d",id); + final WeblogLink lk = new WeblogLink(yearStr, monthStr, dayStr, + numberStr, "", + doSinglePage); + lk.setTypeStandard(); + final String aboutUri = weblogBaseURI + "#" + lk.getFragment(); + final String linkUri = lk.getTarget(weblogBaseURI); Element li = rssDoc.createElementNS(DamlEngine.RDF_NS, "rdf:li"); itemsSeq.appendChild(li); itemsSeq.appendChild(rssDoc.createTextNode("\n")); -- cgit v1.2.3