am df586217: Merge change 26446 into eclair

Merge commit 'df5862173c03f0d9595a2a5cb56c4af407d893dd' into eclair-plus-aosp

* commit 'df5862173c03f0d9595a2a5cb56c4af407d893dd':
  fix bug 2100169: add the line1 number + "/TYPE=PLMN" when sending a pdu.
This commit is contained in:
Wei Huang
2009-09-22 17:23:51 -07:00
committed by Android Git Automerger
4 changed files with 53 additions and 58 deletions

View File

@@ -89,4 +89,25 @@ public class GenericPdu {
public void setMmsVersion(int value) throws InvalidHeaderValueException {
mPduHeaders.setOctet(value, PduHeaders.MMS_VERSION);
}
/**
* Get From value.
* From-value = Value-length
* (Address-present-token Encoded-string-value | Insert-address-token)
*
* @return the value
*/
public EncodedStringValue getFrom() {
return mPduHeaders.getEncodedStringValue(PduHeaders.FROM);
}
/**
* Set From value.
*
* @param value the value
* @throws NullPointerException if the value is null.
*/
public void setFrom(EncodedStringValue value) {
mPduHeaders.setEncodedStringValue(value, PduHeaders.FROM);
}
}

View File

@@ -450,6 +450,29 @@ public class PduComposer {
appendQuotedString(str.getBytes());
}
private EncodedStringValue appendAddressType(EncodedStringValue address) {
EncodedStringValue temp = null;
try {
int addressType = checkAddressType(address.getString());
temp = EncodedStringValue.copy(address);
if (PDU_PHONE_NUMBER_ADDRESS_TYPE == addressType) {
// Phone number.
temp.appendTextString(STRING_PHONE_NUMBER_ADDRESS_TYPE.getBytes());
} else if (PDU_IPV4_ADDRESS_TYPE == addressType) {
// Ipv4 address.
temp.appendTextString(STRING_IPV4_ADDRESS_TYPE.getBytes());
} else if (PDU_IPV6_ADDRESS_TYPE == addressType) {
// Ipv6 address.
temp.appendTextString(STRING_IPV6_ADDRESS_TYPE.getBytes());
}
} catch (NullPointerException e) {
return null;
}
return temp;
}
/**
* Append header to mMessage.
*/
@@ -489,21 +512,8 @@ public class PduComposer {
EncodedStringValue temp;
for (int i = 0; i < addr.length; i++) {
try {
int addressType = checkAddressType(addr[i].getString());
temp = EncodedStringValue.copy(addr[i]);
if (PDU_PHONE_NUMBER_ADDRESS_TYPE == addressType) {
// Phone number.
temp.appendTextString(
STRING_PHONE_NUMBER_ADDRESS_TYPE.getBytes());
} else if (PDU_IPV4_ADDRESS_TYPE == addressType) {
// Ipv4 address.
temp.appendTextString(STRING_IPV4_ADDRESS_TYPE.getBytes());
} else if (PDU_IPV6_ADDRESS_TYPE == addressType) {
// Ipv6 address.
temp.appendTextString(STRING_IPV6_ADDRESS_TYPE.getBytes());
}
} catch (NullPointerException e) {
temp = appendAddressType(addr[i]);
if (temp == null) {
return PDU_COMPOSE_CONTENT_ERROR;
}
@@ -530,7 +540,13 @@ public class PduComposer {
// Address-present-token = <Octet 128>
append(PduHeaders.FROM_ADDRESS_PRESENT_TOKEN);
appendEncodedString(from);
temp = appendAddressType(from);
if (temp == null) {
return PDU_COMPOSE_CONTENT_ERROR;
}
appendEncodedString(temp);
int flen = fstart.getLength();
mStack.pop();

View File

@@ -72,27 +72,6 @@ public class ReadRecInd extends GenericPdu {
mPduHeaders.setLongInteger(value, PduHeaders.DATE);
}
/**
* Get From value.
* From-value = Value-length
* (Address-present-token Encoded-string-value | Insert-address-token)
*
* @return the value
*/
public EncodedStringValue getFrom() {
return mPduHeaders.getEncodedStringValue(PduHeaders.FROM);
}
/**
* Set From value.
*
* @param value the value
* @throws NullPointerException if the value is null.
*/
public void setFrom(EncodedStringValue value) {
mPduHeaders.setEncodedStringValue(value, PduHeaders.FROM);
}
/**
* Get Message-ID value.
*

View File

@@ -225,27 +225,6 @@ public class SendReq extends MultimediaMessagePdu {
mPduHeaders.setLongInteger(value, PduHeaders.MESSAGE_SIZE);
}
/**
* Get From value.
* From-value = Value-length
* (Address-present-token Encoded-string-value | Insert-address-token)
*
* @return the value
*/
public EncodedStringValue getFrom() {
return mPduHeaders.getEncodedStringValue(PduHeaders.FROM);
}
/**
* Set From value.
*
* @param value the value
* @throws NullPointerException if the value is null.
*/
public void setFrom(EncodedStringValue value) {
mPduHeaders.setEncodedStringValue(value, PduHeaders.FROM);
}
/**
* Get X-Mms-Message-Class value.
* Message-class-value = Class-identifier | Token-text