Migrating BlackBerry Applications

Migrate BlackBerry Online Data Proxy applications from 2.1 ESD #3 to 2.2.

These steps use an example scenario that includes before and after code snippets, removed code snippets, and additional information.

  1. Modify user registration code, and all APIs related to registration. Error handling has been changed from exceptions in 2.1 ESD #3 and earlier to standard error objects in 2.2.
    Before:
    try {
             UserManager. clearServerVerificationKey();
             UserManager.initialize(HomeScreen.appID);
             UserManager.setConnectionProfile(serverIP,serverPort,farmID);
             UserManager.registerUser(userName, activationCode);
             UserManager.addUserRegistrationListener(this);
             UserManager. setODPHTTPAuthChallengeListener(this);
             UserManager. setODPHttpErrorListener(this);
    
        }  catch (MessagingClientException oe) {
        }
    After:
    try {
             ODPClientConnection.clearServerVerificationKey();
             ODPUserManager.initInstance(HomeScreen.appID);
             oum = ODPUserManager.getInstance();
             oum.setConnectionProfile(serverIP, serverPort, farmID);
             oum.registerUser(userName,activationCode,true);
             oum. setUserRegistrationListener(this);
             ODPClientConnection. setODPHTTPAuthChallengeListener (this);
             ODPClientConnection. setODPHttpErrorListener(this);
    	
        }  catch (ODPException oe) {
        }

    Removed: nothing has been removed from the interface.

  2. Modify data fetch-related code.
    Before:
    ISDMConnectivitiyParameters params = new SDMConnectivityParameters();
        params.setLanguage("en");
        params.setUserName(backendUsername);
        params.setUserPassword(backendPassword);
        params.setBaseUrl(url);
      SDMPreferences preference = new SDMPreferences();
        requestManager  = new SDMRequestManager(
          new SDMLogger(preference), preference, params, 2);
        final ISDMRequest request = new SDMBaseRequest();
        Hashtable headers = new Hashtable();
      headers.put("X-CSRF-Token", "fetch");
        request.setHeaders(headers);	
        request.setPriority(ISDMRequest.PRIORITY_HIGH);
        request.setRequestMethod(ISDMRequest.REQUEST_METHOD_GET);
        request.setRequestUrl(url);
        request.setListener(listener);
      requestManager.makeRequest(request);
    After:
    ISDMConnectivitiyParameters params = new SDMConnectivityParameters();
        params.enableXSRF(true);
        params.setLanguage("en");
        params.setUserName(backendUsername);
        params.setUserPassword(backendPassword);
        params.setBaseUrl(url);
      SDMPreferences preference = new SDMPreferences();
        requestManager  = new SDMRequestManager(
          new SDMLogger(preference), preference, params, 2);
        final ISDMRequest request = new SDMBaseRequest();
    			
        request.setPriority(ISDMRequest.PRIORITY_HIGH);
        request.setRequestMethod(ISDMRequest.REQUEST_METHOD_GET);
        request.setRequestUrl(url);
        request.setListener(listener);
      requestManager.makeRequest(request);

    Removed: nothing has been removed from the interface.

  3. Modify user deletion code, and related API.
    Before:
    UserManager. deleteUser();
    After:
    ODPUserManager.initInstance(HomeScreen.appID);
    oum = ODPUserManager.getInstance();
    oum.deleteUser();

    Removed: nothing has been removed from the interface.

  4. Modify native notification (push) code, and related API.
    Before:
    UserManager.setPushListener(ISDMNetListener listener);
    After:
    ODPClientConnection. registerForPayloadPush(ISDMNetListener listener);
    ODPClientConnection. registerForNativePush(IODPPushNotificationListenerlistener);

    Removed: nothing has been removed from the interface.

  5. Make modifications to implement additional changes and new features, then recompile your code if required.