diff --git a/src/main/java/com/rackspace/cloud/api/docs/WebHelpMojo.java b/src/main/java/com/rackspace/cloud/api/docs/WebHelpMojo.java
index 0458bcd..cc0d928 100644
--- a/src/main/java/com/rackspace/cloud/api/docs/WebHelpMojo.java
+++ b/src/main/java/com/rackspace/cloud/api/docs/WebHelpMojo.java
@@ -94,6 +94,14 @@ public abstract class WebHelpMojo extends AbstractWebhelpMojo {
*/
private String includeDateInPdfFilename;
+ /**
+ * Base for the pdf file name. By default this is the
+ * base of the input xml file.
+ *
+ * @parameter expression="${generate-webhelp.pdfFilenameBase}"
+ */
+ private String pdfFilenameBase;
+
/**
* Controls whether output is colorized based on revisionflag attributes.
*
@@ -452,7 +460,10 @@ public abstract class WebHelpMojo extends AbstractWebhelpMojo {
}
transformer.setParameter("webhelp.war", webhelpWar);
- transformer.setParameter("includeDateInPdfFilename", includeDateInPdfFilename);
+ if(null != includeDateInPdfFilename){
+ transformer.setParameter("includeDateInPdfFilename", includeDateInPdfFilename);
+ }
+ transformer.setParameter("pdfFilenameBase", pdfFilenameBase);
transformer.setParameter("publicationNotificationEmails", publicationNotificationEmails);
@@ -677,6 +688,7 @@ public abstract class WebHelpMojo extends AbstractWebhelpMojo {
map.put("webhelp.war", webhelpWar);
map.put("publicationNotificationEmails", publicationNotificationEmails);
map.put("includeDateInPdfFilename", includeDateInPdfFilename);
+ map.put("pdfFilenameBase", pdfFilenameBase);
map.put("groupId", docProject.getGroupId());
map.put("artifactId", docProject.getArtifactId());
map.put("docProjectVersion", docProject.getVersion());
@@ -769,6 +781,7 @@ public abstract class WebHelpMojo extends AbstractWebhelpMojo {
pdfBuilder.setCoverLogoLeft(coverLogoLeft);
pdfBuilder.setCoverLogoTop(coverLogoTop);
pdfBuilder.setCoverUrl(coverUrl);
+ pdfBuilder.setPdfFilenameBase(pdfFilenameBase);
pdfBuilder.setBranding(branding);
pdfBuilder.setSecurity(security);
diff --git a/src/main/java/com/rackspace/cloud/api/docs/builders/PDFBuilder.java b/src/main/java/com/rackspace/cloud/api/docs/builders/PDFBuilder.java
index 30e4bd9..d7d1502 100644
--- a/src/main/java/com/rackspace/cloud/api/docs/builders/PDFBuilder.java
+++ b/src/main/java/com/rackspace/cloud/api/docs/builders/PDFBuilder.java
@@ -122,6 +122,7 @@ public class PDFBuilder {
private String statusBarText;
private String trimWadlUriCount;
private String computeWadlPathFromDocbookPath;
+ private String pdfFilenameBase;
/**
* The location of the stylesheet customization.
@@ -194,8 +195,14 @@ public class PDFBuilder {
final String inputFilename = included[i];
//final String inputFilename = sourceFilePath;
- // targetFilename is inputFilename - ".xml" + targetFile extension
- String baseTargetFile = inputFilename.substring(0, inputFilename.length() - 4);
+ // targetFilename is inputFilename - ".xml" + targetFile extension
+ String baseTargetFile;
+ if(null != pdfFilenameBase && pdfFilenameBase != ""){
+ baseTargetFile = pdfFilenameBase;
+ } else {
+ baseTargetFile = inputFilename.substring(0, inputFilename.length() - 4);
+ }
+
final String targetFilename = baseTargetFile + ".fo";
final File sourceFile = new File(sourceDirectory+"/"+inputFilename);
@@ -412,7 +419,8 @@ public class PDFBuilder {
transformer.setParameter("source.directory",sourceDirectory);
transformer.setParameter("compute.wadl.path.from.docbook.path",computeWadlPathFromDocbookPath);
-
+ transformer.setParameter("pdfFilenameBase",pdfFilenameBase)
+;
transformer.setParameter ("admon.graphics.path", imageDirectory.getAbsolutePath()+File.separator);
transformer.setParameter ("callout.graphics.path", calloutDirectory.getAbsolutePath()+File.separator);
@@ -710,6 +718,16 @@ public class PDFBuilder {
this.computeWadlPathFromDocbookPath = computeWadlPathFromDocbookPath;
}
+ public String getPdfFilenameBase() {
+ return pdfFilenameBase;
+ }
+
+ public void setPdfFilenameBase(
+ String pdfFilenameBase) {
+ this.pdfFilenameBase = pdfFilenameBase;
+ }
+
+
public List getEntities() {
return entities;
}
diff --git a/src/main/resources/cloud/webhelp/bookinfo.xsl b/src/main/resources/cloud/webhelp/bookinfo.xsl
index 1d77dc5..c2527e8 100644
--- a/src/main/resources/cloud/webhelp/bookinfo.xsl
+++ b/src/main/resources/cloud/webhelp/bookinfo.xsl
@@ -19,6 +19,7 @@
external
rackspace
+
0
@@ -27,6 +28,14 @@
+
+
+
+
+
+
+
+
@@ -45,9 +54,9 @@
href="{$base.dir}/bookinfo.xml"
method="xml" indent="yes" encoding="UTF-8">
-
- -latest.pdf.pdf
-
+ -latest.pdf
+
+