String quotedBody; // Quote original message - different methods for text and html if (model.isHtml()) { // Html: Insertion of text before and after original message // get necessary headerfields BasicHeader rfcHeader = new BasicHeader(folder.getHeaderFields( uids[0], headerfields)); String subject = rfcHeader.getSubject(); String date = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.MEDIUM).format(rfcHeader.getDate()); String from = AddressListRenderer.renderToHTMLWithLinks( new Address[] { rfcHeader.getFrom()}).toString(); String to = AddressListRenderer.renderToHTMLWithLinks( rfcHeader.getTo()).toString(); // build "quoted" message StringBuffer buf = new StringBuffer(); buf.append("<html><body><p>"); buf.append(MailResourceLoader.getString("dialog", "composer", "original_message_start")); buf.append("<br>" + MailResourceLoader.getString("header", "header", "subject") + ": " + subject); buf.append("<br>" + MailResourceLoader.getString("header", "header", "date") + ": " + date); buf.append("<br>" + MailResourceLoader.getString("header", "header", "from") + ": " + from); buf.append("<br>" + MailResourceLoader.getString("header", "header", "to") + ": " + to); buf.append("</p>"); buf.append(HtmlParser.removeComments(// comments are not displayed // correctly in composer HtmlParser.getHtmlBody(StreamUtils.readCharacterStream(bodyStream) .toString()))); buf.append("<p>"); buf.append(MailResourceLoader.getString("dialog", "composer", "original_message_end")); buf.append("</p></body></html>"); quotedBody = buf.toString();
String quotedBody; // Quote original message - different methods for text and html if (model.isHtml()) { // Html: Insertion of text before and after original message // get necessary headerfields BasicHeader rfcHeader = new BasicHeader(folder.getHeaderFields( uids[0], headerfields)); String subject = rfcHeader.getSubject(); String date = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.MEDIUM).format(rfcHeader.getDate()); String from = AddressListRenderer.renderToHTMLWithLinks( new Address[] { rfcHeader.getFrom() }).toString(); String to = AddressListRenderer.renderToHTMLWithLinks( rfcHeader.getTo()).toString(); // build "quoted" message StringBuffer buf = new StringBuffer(); buf.append("<html><body><p>"); buf.append(MailResourceLoader.getString("dialog", "composer", "original_message_start")); buf.append("<br>" + MailResourceLoader.getString("header", "header", "subject") + ": " + subject); buf.append("<br>" + MailResourceLoader.getString("header", "header", "date") + ": " + date); buf.append("<br>" + MailResourceLoader.getString("header", "header", "from") + ": " + from); buf.append("<br>" + MailResourceLoader.getString("header", "header", "to") + ": " + to); buf.append("</p>"); buf.append(HtmlParser.removeComments( // comments are not displayed // correctly in composer HtmlParser.getHtmlBody(StreamUtils.readCharacterStream(bodyStream) .toString()))); buf.append("<p>"); buf.append(MailResourceLoader.getString("dialog", "composer", "original_message_end")); buf.append("</p></body></html>"); quotedBody = buf.toString();
Clone fragments detected by clone detection tool
File path: /columba-1.4-src/mail/src/main/java/org/columba/mail/gui/composer/command/ReplyCommand.java File path: /columba-1.4-src/mail/src/main/java/org/columba/mail/gui/composer/command/ForwardInlineCommand.java
Method name: String createQuotedBody(MimeHeader, IMailbox, Object[], Integer[]) Method name: String createQuotedBody(MimeHeader, IMailbox, Object[], Integer[])
Number of AST nodes: 19 Number of AST nodes: 19
1
String quotedBody;
1
String quotedBody;
2
        // Quote original message - different methods for text and html
2
		// Quote original message - different methods for text and html
3
        if (model.isHtml()) {
3
		if (model.isHtml()) {
4
            // Html: Insertion of text before and after original message
4
			// Html: Insertion of text before and after original message
5
            // get necessary headerfields
5
			// get necessary headerfields
6
            BasicHeader rfcHeader = new BasicHeader(folder.getHeaderFields(
6
			BasicHeader rfcHeader = new BasicHeader(folder.getHeaderFields(
7
                    uids[0], headerfields));
7
					uids[0], headerfields));
8
            String subject = rfcHeader.getSubject();
8
			String subject = rfcHeader.getSubject();
9
            String date = DateFormat.getDateTimeInstance(DateFormat.LONG,
9
			String date = DateFormat.getDateTimeInstance(DateFormat.LONG,
10
                    DateFormat.MEDIUM).format(rfcHeader.getDate());
10
					DateFormat.MEDIUM).format(rfcHeader.getDate());
11
            String from = AddressListRenderer.renderToHTMLWithLinks(
11
			String from = AddressListRenderer.renderToHTMLWithLinks(
12
                    new Address[] { rfcHeader.getFrom()}).toString();
12
					new Address[] { rfcHeader.getFrom() }).toString();
13
            String to = AddressListRenderer.renderToHTMLWithLinks(
13
			String to = AddressListRenderer.renderToHTMLWithLinks(
14
                    rfcHeader.getTo()).toString();
14
					rfcHeader.getTo()).toString();
15
            // build "quoted" message
15
			// build "quoted" message
16
            StringBuffer buf = new StringBuffer();
16
			StringBuffer buf = new StringBuffer();
17
            buf.append("<html><body><p>");
17
			buf.append("<html><body><p>");
18
            buf.append(MailResourceLoader.getString("dialog", "composer",
18
			buf.append(MailResourceLoader.getString("dialog", "composer",
19
                    "original_message_start"));
19
					"original_message_start"));
20
            buf.append("<br>"
20
			buf.append("<br>"
21
                    + MailResourceLoader.getString("header", "header",
21
					+ MailResourceLoader.getString("header", "header",
22
                            "subject") + ": " + subject);
22
							"subject") + ": " + subject);
23
            buf.append("<br>"
23
			buf.append("<br>"
24
                    + MailResourceLoader.getString("header", "header", "date")
24
					+ MailResourceLoader.getString("header", "header", "date")
25
                    + ": " + date);
25
					+ ": " + date);
26
            buf.append("<br>"
26
			buf.append("<br>"
27
                    + MailResourceLoader.getString("header", "header", "from")
27
					+ MailResourceLoader.getString("header", "header", "from")
28
                    + ": " + from);
28
					+ ": " + from);
29
            buf.append("<br>"
29
			buf.append("<br>"
30
                    + MailResourceLoader.getString("header", "header", "to")
30
					+ MailResourceLoader.getString("header", "header", "to")
31
                    + ": " + to);
31
					+ ": " + to);
32
            buf.append("</p>");
32
			buf.append("</p>");
33
            buf.append(HtmlParser.removeComments(// comments are not displayed
33
			buf.append(HtmlParser.removeComments( // comments are not displayed
34
                                                 // correctly in composer
34
					// correctly in composer
35
                    HtmlParser.getHtmlBody(StreamUtils.readCharacterStream(bodyStream)
35
					HtmlParser.getHtmlBody(StreamUtils.readCharacterStream(bodyStream)
36
                            .toString())));
36
							.toString())));
37
            buf.append("<p>");
37
			buf.append("<p>");
38
            buf.append(MailResourceLoader.getString("dialog", "composer",
38
			buf.append(MailResourceLoader.getString("dialog", "composer",
39
                    "original_message_end"));
39
					"original_message_end"));
40
            buf.append("</p></body></html>");
40
			buf.append("</p></body></html>");
41
            quotedBody = buf.toString();
41
			quotedBody = buf.toString();
Summary
Number of common nesting structure subtrees1
Number of refactorable cases1
Number of non-refactorable cases0
Time elapsed for finding largest common nesting structure subtrees (ms)0.0
Clones locationClones are in different classes having the same super class
Number of node comparisons1
  1. {Refactorable}
    Mapping Summary
    Number of mapped statements1
    Number of unmapped statements in the first code fragment0
    Number of unmapped statements in the second code fragment0
    Time elapsed for statement mapping (ms)0.0
    Clone typeType 1
    Mapped Statements
    ID Statement ID Statement
    12
    String quotedBody;
    11
    String quotedBody;
    Precondition Violations (0)
    Row Violation