Improved the exception message when the name/link is too long

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/compress/trunk@1512207 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java b/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java
index f309184..dba8fdb 100644
--- a/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java
+++ b/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java
@@ -272,12 +272,12 @@
         Map<String, String> paxHeaders = new HashMap<String, String>();
         final String entryName = entry.getName();
         boolean paxHeaderContainsPath = handleLongName(entryName, paxHeaders, "path",
-                                                       TarConstants.LF_GNUTYPE_LONGNAME);
+                                                       TarConstants.LF_GNUTYPE_LONGNAME, "file name");
 
         final String linkName = entry.getLinkName();
         boolean paxHeaderContainsLinkPath = linkName != null && linkName.length() > 0
             && handleLongName(linkName, paxHeaders, "linkpath",
-                              TarConstants.LF_GNUTYPE_LONGLINK);
+                              TarConstants.LF_GNUTYPE_LONGLINK, "link name");
 
         if (bigNumberMode == BIGNUMBER_POSIX) {
             addPaxHeadersForBigNumbers(paxHeaders, entry);
@@ -630,11 +630,12 @@
      * @param paxHeaders current map of pax headers
      * @param paxHeaderName name of the pax header to write
      * @param linkType type of the GNU entry to write
+     * @param fieldName the name of the field
      * @return whether a pax header has been written.
      */
     private boolean handleLongName(String name,
                                    Map<String, String> paxHeaders,
-                                   String paxHeaderName, byte linkType)
+                                   String paxHeaderName, byte linkType, String fieldName)
         throws IOException {
         final ByteBuffer encodedName = encoding.encode(name);
         final int len = encodedName.limit() - encodedName.position();
@@ -646,8 +647,7 @@
             } else if (longFileMode == LONGFILE_GNU) {
                 // create a TarEntry for the LongLink, the contents
                 // of which are the link's name
-                TarArchiveEntry longLinkEntry =
-                    new TarArchiveEntry(TarConstants.GNU_LONGLINK, linkType);
+                TarArchiveEntry longLinkEntry = new TarArchiveEntry(TarConstants.GNU_LONGLINK, linkType);
 
                 longLinkEntry.setSize(len + 1); // +1 for NUL
                 putArchiveEntry(longLinkEntry);
@@ -655,7 +655,7 @@
                 write(0); // NUL terminator
                 closeArchiveEntry();
             } else if (longFileMode != LONGFILE_TRUNCATE) {
-                throw new RuntimeException(paxHeaderName + " '" + name
+                throw new RuntimeException(fieldName + " '" + name
                                            + "' is too long ( > "
                                            + TarConstants.NAMELEN + " bytes)");
             }