Author: tilman
Date: Sat Jun 28 12:32:43 2025
New Revision: 1926814

URL: http://svn.apache.org/viewvc?rev=1926814&view=rev
Log:
PDFBOX-6028: use same prefix for all jobs (xmp advises against using different 
prefixes for the same namespace)

Modified:
    
pdfbox/branches/2.0/xmpbox/src/main/java/org/apache/xmpbox/schema/XMPBasicJobTicketSchema.java

Modified: 
pdfbox/branches/2.0/xmpbox/src/main/java/org/apache/xmpbox/schema/XMPBasicJobTicketSchema.java
URL: 
http://svn.apache.org/viewvc/pdfbox/branches/2.0/xmpbox/src/main/java/org/apache/xmpbox/schema/XMPBasicJobTicketSchema.java?rev=1926814&r1=1926813&r2=1926814&view=diff
==============================================================================
--- 
pdfbox/branches/2.0/xmpbox/src/main/java/org/apache/xmpbox/schema/XMPBasicJobTicketSchema.java
 (original)
+++ 
pdfbox/branches/2.0/xmpbox/src/main/java/org/apache/xmpbox/schema/XMPBasicJobTicketSchema.java
 Sat Jun 28 12:32:43 2025
@@ -60,6 +60,15 @@ public class XMPBasicJobTicketSchema ext
 
     public void addJob(String id, String name, String url, String fieldPrefix)
     {
+        if (bagJobs != null && fieldPrefix == null)
+        {
+            // use same prefix for all jobs
+            JobType first = (JobType) bagJobs.getAllProperties().get(0);
+            if (first.getPrefix() != null)
+            {
+                fieldPrefix = first.getPrefix();
+            }
+        }
         JobType job = new JobType(getMetadata(), fieldPrefix);
         job.setId(id);
         job.setName(name);
@@ -74,6 +83,13 @@ public class XMPBasicJobTicketSchema ext
         {
             // use same prefix for all jobs
             job.setPrefix(prefix);
+            if (bagJobs != null)
+            {
+                for (AbstractField field : bagJobs.getAllProperties())
+                {
+                    ((JobType) field).setPrefix(prefix);
+                }
+            }
         }
         else
         {


Reply via email to