Join Now
Quality Rating:
  • Currently 0.0 / 5
(0.0 / 5 - 0 votes cast)
Expertise Level:
  • Currently 0.0 / 5
(0.0 / 5 - 0 votes cast)

This page was last modified 20:14, 12 April 2008.

How to import landmarks from file to database

From Forum Nokia Wiki

You can use class CPosLandmarkParser for parsing the landmark content, this functionality can be used for importing data from files. The type (e.g. the mime type) must be specified for creating instance of this class. You can use mime type "application/vnd.nokia.landmarkcollection+xml".

The following code snippet demonstrates how to import data from the XML-file to the specified local landmark database. It is necessary to include the following headers:

  • epos_cposlmdatabasemanager.h
  • epos_hposlmdatabaseinfo.h
  • epos_cposlandmarkparser.h

And link against:

  • eposlandmarks.lib
  • eposlmdbmanlib.lib
// db URI
_LIT( KNewDbUri, "file://C:new.ldb" );
TBuf<32> newDbUri( KNewDbUri );
	
// file with landmarks
_LIT( KSrcFile, "C:\\LmBackup\\my_lms.xml" );
	
// db manager
CPosLmDatabaseManager* dbManager = CPosLmDatabaseManager :: NewL();	
CleanupStack :: PushL( dbManager );
 
// create database, if necessary
if( !dbManager->DatabaseExistsL( newDbUri ) )
{
   HPosLmDatabaseInfo* dbInfo = HPosLmDatabaseInfo :: NewLC( newDbUri );
   dbManager->CreateDatabaseL( *dbInfo );
   CleanupStack :: PopAndDestroy( dbInfo );
}
	
// open DB and init it, if necessary
CPosLandmarkDatabase* db = CPosLandmarkDatabase :: OpenL( newDbUri );
CleanupStack :: PushL( db );
if( db->IsInitializingNeeded() )
   ExecuteAndDeleteLD( db->InitializeL() );
 
// clear the database (batch mode)
ExecuteAndDeleteLD( db->RemoveAllLandmarksL() );
	
// MIME type for import & export
_LIT8( KPosMimeTypeLandmarkCollectionXml, "application/vnd.nokia.landmarkcollection+xml" );
	
// Create the parser to be used for importing landmarks
CPosLandmarkParser* parser = CPosLandmarkParser :: NewL( KPosMimeTypeLandmarkCollectionXml );
CleanupStack :: PushL( parser );
    
// import data (batch mode)
parser->SetInputFileL( KSrcFile );
ExecuteAndDeleteLD( db->ImportLandmarksL( *parser, CPosLandmarkDatabase::EDefaultOptions ) );
    			
CleanupStack :: PopAndDestroy( 3 ); // parser db dbManager

Internal Links

Related Discussions
Thread Thread Starter Forum Replies Last Post
Applet with mysql antonio5982 Mobile Java Networking & Messaging & Security 1 2007-05-30 09:15
How to compile PY to PYC? JOM Python 13 2008-06-13 17:07
after ensemble app crashes jasques Python 4 2008-04-28 18:32
Carbide.C++ re-import lenclud Symbian Tools & SDKs 4 2007-02-21 09:18
Creating and managing a database klausstahl Python 2 2006-10-16 10:34
 
Powered by MediaWiki
     
     RDF Facets:
     
     
     qfnZtypeQUqfnTypeZCommunityContentQ
     qfnZtypeQUqfnTypeZWebpageQ
     qfnZtypeQUqfnTypeZWikiContentQ
     qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX