X-Git-Url: http://git.rot13.org/?p=zxing.git;a=blobdiff_plain;f=core%2Fsrc%2Fcom%2Fgoogle%2Fzxing%2Fclient%2Fresult%2FSMSParsedResult.java;h=23b8d7e16cd40478deea614714d645f13a476619;hp=4b33375184d7f8ef6e6fb92db4731c8cd572150e;hb=584a6a9fd65349a584eabe71749aeb2d8a14bbfa;hpb=1aff9c849dab0a202a10ee21bbbf19504d0bf456 diff --git a/core/src/com/google/zxing/client/result/SMSParsedResult.java b/core/src/com/google/zxing/client/result/SMSParsedResult.java index 4b333751..23b8d7e1 100644 --- a/core/src/com/google/zxing/client/result/SMSParsedResult.java +++ b/core/src/com/google/zxing/client/result/SMSParsedResult.java @@ -16,57 +16,26 @@ package com.google.zxing.client.result; -import com.google.zxing.Result; - /** - * Represents a "sms:" URI result, which specifies a number to SMS and optional - * "via" number. See - * the IETF draft on this. - * * @author srowen@google.com (Sean Owen) */ -public final class SMSParsedResult extends ParsedReaderResult { +public final class SMSParsedResult extends ParsedResult { private final String smsURI; private final String number; private final String via; + private final String subject; + private final String body; + private final String title; - private SMSParsedResult(String smsURI, String number, String via) { - super(ParsedReaderResultType.SMS); + public SMSParsedResult(String smsURI, String number, String via, String subject, String body, String title) { + super(ParsedResultType.SMS); this.smsURI = smsURI; this.number = number; this.via = via; - } - - public static SMSParsedResult parse(Result result) { - String rawText = result.getText(); - if (rawText == null || !rawText.startsWith("sms:")) { - return null; - } - // Drop sms, query portion - int queryStart = rawText.indexOf('?', 4); - String smsURIWithoutQuery; - if (queryStart < 0) { - smsURIWithoutQuery = rawText.substring(4); - } else { - smsURIWithoutQuery = rawText.substring(4, queryStart); - } - int numberEnd = smsURIWithoutQuery.indexOf(';'); - String number; - String via; - if (numberEnd < 0) { - number = smsURIWithoutQuery; - via = null; - } else { - number = smsURIWithoutQuery.substring(0, numberEnd); - String maybeVia = smsURIWithoutQuery.substring(numberEnd + 1); - if (maybeVia.startsWith("via=")) { - via = maybeVia.substring(4); - } else { - via = null; - } - } - return new SMSParsedResult(rawText, number, via); + this.subject = subject; + this.body = body; + this.title = title; } public String getSMSURI() { @@ -81,6 +50,18 @@ public final class SMSParsedResult extends ParsedReaderResult { return via; } + public String getSubject() { + return subject; + } + + public String getBody() { + return body; + } + + public String getTitle() { + return title; + } + public String getDisplayResult() { return number; }