Merge change 1406 into donut

* changes:
  Internal APIs to get/set SMSC address.
This commit is contained in:
Android (Google) Code Review
2009-05-11 17:08:19 -07:00
7 changed files with 86 additions and 0 deletions

View File

@@ -1023,6 +1023,21 @@ public interface CommandsInterface {
*/
void setLocationUpdates(boolean enable, Message response);
/**
* Gets the default SMSC address.
*
* @param result Callback message contains the SMSC address.
*/
void getSmscAddress(Message result);
/**
* Sets the default SMSC address.
*
* @param address new SMSC address
* @param result Callback message is empty on completion
*/
void setSmscAddress(String address, Message result);
void invokeOemRilRequestRaw(byte[] data, Message response);

View File

@@ -924,6 +924,21 @@ public interface Phone {
*/
void getPreferredNetworkType(Message response);
/**
* Gets the default SMSC address.
*
* @param result Callback message contains the SMSC address.
*/
void getSmscAddress(Message result);
/**
* Sets the default SMSC address.
*
* @param address new SMSC address
* @param result Callback message is empty on completion
*/
void setSmscAddress(String address, Message result);
/**
* Query neighboring cell IDs. <code>response</code> is dispatched when
* this is complete. <code>response.obj</code> will be an AsyncResult,

View File

@@ -574,6 +574,14 @@ public abstract class PhoneBase implements Phone {
mCM.getPreferredNetworkType(response);
}
public void getSmscAddress(Message result) {
mCM.getSmscAddress(result);
}
public void setSmscAddress(String address, Message result) {
mCM.setSmscAddress(address, result);
}
public void setTTYModeEnabled(boolean enable, Message onComplete) {
// This function should be overridden by the class CDMAPhone. Not implemented in GSMPhone.
Log.e(LOG_TAG, "Error! This function should never be executed, inactive CDMAPhone.");

View File

@@ -671,5 +671,13 @@ public class PhoneProxy extends Handler implements Phone {
public void notifyDataActivity() {
mActivePhone.notifyDataActivity();
}
public void getSmscAddress(Message result) {
mActivePhone.getSmscAddress(result);
}
public void setSmscAddress(String address, Message result) {
mActivePhone.setSmscAddress(address, result);
}
}

View File

@@ -1760,6 +1760,32 @@ public final class RIL extends BaseCommands implements CommandsInterface {
send(rr);
}
/**
* {@inheritDoc}
*/
public void getSmscAddress(Message result) {
RILRequest rr = RILRequest.obtain(RIL_REQUEST_GET_SMSC_ADDRESS, result);
if (RILJ_LOGD) riljLog(rr.serialString() + "> " + requestToString(rr.mRequest));
send(rr);
}
/**
* {@inheritDoc}
*/
public void setSmscAddress(String address, Message result) {
RILRequest rr = RILRequest.obtain(RIL_REQUEST_SET_SMSC_ADDRESS, result);
rr.mp.writeInt(1);
rr.mp.writeString(address);
if (RILJ_LOGD) riljLog(rr.serialString() + "> " + requestToString(rr.mRequest)
+ " : " + address);
send(rr);
}
//***** Private Methods
private void sendScreenState(boolean on) {
@@ -2027,6 +2053,8 @@ public final class RIL extends BaseCommands implements CommandsInterface {
case RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM: ret = responseInts(p); break;
case RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM: ret = responseVoid(p); break;
case RIL_REQUEST_DEVICE_IDENTITY: ret = responseStrings(p); break;
case RIL_REQUEST_GET_SMSC_ADDRESS: ret = responseString(p); break;
case RIL_REQUEST_SET_SMSC_ADDRESS: ret = responseVoid(p); break;
default:
throw new RuntimeException("Unrecognized solicited response: " + rr.mRequest);
//break;
@@ -2885,6 +2913,8 @@ public final class RIL extends BaseCommands implements CommandsInterface {
case RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM: return "RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM";
case RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM: return "RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM";
case RIL_REQUEST_DEVICE_IDENTITY: return "RIL_REQUEST_DEVICE_IDENTITY";
case RIL_REQUEST_GET_SMSC_ADDRESS: return "RIL_REQUEST_GET_SMSC_ADDRESS";
case RIL_REQUEST_SET_SMSC_ADDRESS: return "RIL_REQUEST_SET_SMSC_ADDRESS";
default: return "<unknown request>";
}
}

View File

@@ -208,6 +208,8 @@ cat include/telephony/ril.h | \
int RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM = 96;
int RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM = 97;
int RIL_REQUEST_DEVICE_IDENTITY = 98;
int RIL_REQUEST_GET_SMSC_ADDRESS = 100;
int RIL_REQUEST_SET_SMSC_ADDRESS = 101;
int RIL_UNSOL_RESPONSE_BASE = 1000;
int RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED = 1000;
int RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED = 1001;

View File

@@ -1001,6 +1001,14 @@ public final class SimulatedCommands extends BaseCommands
unimplemented(response);
}
public void getSmscAddress(Message result) {
unimplemented(result);
}
public void setSmscAddress(String address, Message result) {
unimplemented(result);
}
private boolean isSimLocked() {
if (mSimLockedState != SimLockState.NONE) {
return true;