Author: channa
Date: Mon Jul 14 22:44:44 2008
New Revision: 19279
URL: http://wso2.org/svn/browse/wso2?view=rev&revision=19279

Log:
Adding a utility method that processes a given string and determines if 
unacceptable long contiguous string segments exist. Spaces are inserted if 
necessary to allow the browser to wrap this string. MASHUP-857 & MASHUP-469.


Modified:
   trunk/mashup/java/modules/core/src/org/wso2/mashup/utils/MashupUtils.java
   trunk/mashup/java/modules/www/activity.jsp
   trunk/mashup/java/modules/www/cert_manager.jsp
   trunk/mashup/java/modules/www/index.jsp
   trunk/mashup/java/modules/www/mashup.jsp

Modified: 
trunk/mashup/java/modules/core/src/org/wso2/mashup/utils/MashupUtils.java
URL: 
http://wso2.org/svn/browse/wso2/trunk/mashup/java/modules/core/src/org/wso2/mashup/utils/MashupUtils.java?rev=19279&r1=19278&r2=19279&view=diff
==============================================================================
--- trunk/mashup/java/modules/core/src/org/wso2/mashup/utils/MashupUtils.java   
(original)
+++ trunk/mashup/java/modules/core/src/org/wso2/mashup/utils/MashupUtils.java   
Mon Jul 14 22:44:44 2008
@@ -1498,4 +1498,51 @@
         }
         return true;
     }
+
+    /**
+     * String segments longer than the longest allowed unbroken string will 
have spaces inserted
+     * into them, so that the browser can break them up.
+     *
+     * @param sourceText Text to be processed.
+     * @param maxUnbroken Maximum allowed unbroken string length.
+     * @return text not containing any string segment exceeding the constant 
length.
+     */
+    public static String makeWrappable(String sourceText, int maxUnbroken) {
+        StringBuilder processedString;
+        boolean inserted = false;
+
+        // Process only if the source string is longer than the max unbroken 
value.
+        if (sourceText.length() > maxUnbroken) {
+            processedString = new StringBuilder();
+            // Breaking up string to identify longest unbroken segments, for 
space insertion.
+            String [] segments = sourceText.split("\\s");
+
+            // Process each segment separately.
+            for (int i = 0; i < segments.length; i++) {
+                if (segments[i].length() > maxUnbroken) {
+                    StringBuilder processedSegment = new 
StringBuilder(segments[i]);
+
+                    // Insert spaces to allow the unbroken string to be 
wrapped at
+                    for (int j = maxUnbroken; j < processedSegment.length(); j 
+= maxUnbroken) {
+                        processedSegment.insert(j, " ");
+                        inserted = true;
+                    }
+                    segments[i] = processedSegment.toString();
+                }
+                processedString.append(segments[i]);
+
+                // Restoring spaces lost in split operation.
+                processedString.append(" ");
+            }
+
+            // If no insertions were actually needed, return the original 
string.
+            if (inserted) {
+                return processedString.toString();
+            } else {
+                return sourceText;
+            }
+        } else {
+            return sourceText;
+        }
+    }
 }

Modified: trunk/mashup/java/modules/www/activity.jsp
URL: 
http://wso2.org/svn/browse/wso2/trunk/mashup/java/modules/www/activity.jsp?rev=19279&r1=19278&r2=19279&view=diff
==============================================================================
--- trunk/mashup/java/modules/www/activity.jsp  (original)
+++ trunk/mashup/java/modules/www/activity.jsp  Mon Jul 14 22:44:44 2008
@@ -20,6 +20,7 @@
 <%@ page import="org.wso2.mashup.webapp.utils.RegistryUtils" %>
 <%@ page import="java.util.*" %>
 <%@ page import="org.wso2.registry.session.UserRegistry" %>
+<%@ page import="org.wso2.mashup.utils.MashupUtils" %>
 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
 
 <%
@@ -107,7 +108,7 @@
                         .getContentString()%>
                 </a>
                     <% } else if (action.equals("commented")) { %>
-                    <span class="inline-comment">"<%=result.getContentString() 
%>"</span>
+                    <span class="inline-comment">"<%= 
MashupUtils.makeWrappable(result.getContentString(), 100) %>"</span>
                     <% } %>
                 </td>
             </tr>

Modified: trunk/mashup/java/modules/www/cert_manager.jsp
URL: 
http://wso2.org/svn/browse/wso2/trunk/mashup/java/modules/www/cert_manager.jsp?rev=19279&r1=19278&r2=19279&view=diff
==============================================================================
--- trunk/mashup/java/modules/www/cert_manager.jsp      (original)
+++ trunk/mashup/java/modules/www/cert_manager.jsp      Mon Jul 14 22:44:44 2008
@@ -324,9 +324,9 @@
                 %>
                 <td><%=certs[x].getAlias()%>
                 </td>
-                <td><%=certs[x].getIssuerDN()%>
+                <td><%=MashupUtils.makeWrappable(certs[x].getIssuerDN(), 60)%>
                 </td>
-                <td><%=certs[x].getSubjectDN()%>
+                <td><%=MashupUtils.makeWrappable(certs[x].getSubjectDN(), 60)%>
                 </td>
                 <td><%=certs[x].getNotBefore()%>
                 </td>

Modified: trunk/mashup/java/modules/www/index.jsp
URL: 
http://wso2.org/svn/browse/wso2/trunk/mashup/java/modules/www/index.jsp?rev=19279&r1=19278&r2=19279&view=diff
==============================================================================
--- trunk/mashup/java/modules/www/index.jsp     (original)
+++ trunk/mashup/java/modules/www/index.jsp     Mon Jul 14 22:44:44 2008
@@ -294,7 +294,7 @@
                     
href="search.jsp?query=mashups&for=<%=result.getContentString()%>&tags=true"><%=result
                     .getContentString()%></a>
         <% } else if (action.equals("commented")) { %>
-        <span class="inline-comment">"<%=result.getContentString() %>"</span>
+        <span class="inline-comment">"<%= 
MashupUtils.makeWrappable(result.getContentString(), 100) %>"</span>
         <% } %>
     </td>
 </tr>

Modified: trunk/mashup/java/modules/www/mashup.jsp
URL: 
http://wso2.org/svn/browse/wso2/trunk/mashup/java/modules/www/mashup.jsp?rev=19279&r1=19278&r2=19279&view=diff
==============================================================================
--- trunk/mashup/java/modules/www/mashup.jsp    (original)
+++ trunk/mashup/java/modules/www/mashup.jsp    Mon Jul 14 22:44:44 2008
@@ -635,7 +635,7 @@
                         .getFullName(request, commenter) %></a> 
(<%=commenter%>)
                 </td>
                 <td class="right" colspan="2">
-                    <%= text %>
+                    <%= MashupUtils.makeWrappable(text, 100) %>
                     <%
                         if (author.equals(currentUser) || 
commenter.equals(currentUser) || RegistryUtils.isAdminRole(userRegistry)) {
                             String shortCommentText;

_______________________________________________
Mashup-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/mashup-dev

Reply via email to