In this lesson, you add synchronization capabilities to your application.
In the HomeScreen constructor, add a Sync menu item.
// Add a menu item addMenuItem(_addToListMenuItem); // Add sync menu item addMenuItem(_syncMenuItem); // Create database and connect try{ ... |
Define the menu item in the class variables declarations.
private MenuItem _addToListMenuItem = new MenuItem("Add", 1, 1){ public void run() { onAddToList(); } }; private MenuItem _syncMenuItem = new MenuItem("Sync", 2, 1){ public void run() { onSync(); } }; |
Create the onSync method.
private void onSync(){ try{ if( _da.sync() ){ _statusLabel.setText("Synchronization succeeded"); } else { _statusLabel.setText("Synchronization failed"); } this.refreshNameList(); } catch ( Exception ex){ System.out.println( ex.toString() ); } } |
Define the syncParms and streamParms variables at the class level.
private static SyncParms _syncParms; private static StreamHTTPParms _streamParms; |
In the DataAccess class, add a sync method.
public boolean sync() { try { if( _syncParms == null ){ String host = "ultralitej.sybase.com"; _syncParms = _conn.createSyncParms( "mluser", "HelloBlackBerrySyncModel" ); _syncParms.setPassword("mlpassword"); _streamParms = _syncParms.getStreamParms(); _streamParms.setPort( 80 ); // use your own _streamParms.setHost( host ); // use your own if(host.equals("ultralitej.sybase.com")) { _streamParms.setURLSuffix("scripts/iaredirect.dll/ml/HelloBlackBerry/"); } } System.out.println( "Synchronizing" ); _conn.synchronize( _syncParms ); return true; } catch( ULjException uex){ System.out.println(uex.toString()); return false; } } |
The synchronization parameters object, SyncParms, includes the user name and password that you specified when deploying the synchronization model. It also includes the name of the synchronization model you created. In MobiLink, this name now refers to the synchronization version, or a set of synchronization logic, that was deployed to your consolidated database.
The stream parameters object, StreamHTTPParms, indicate the host name and port number of the MobiLink server. When you start the MobiLink server in the next lesson, use your own computer name and select a port that is available. Do not use localhost as your computer name. You can use port 80 if you have no web server running on your computer.
Compile your application.
Discuss this page in DocCommentXchange. Send feedback about this page using email. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |