metadataengine/server/inc/mdssqlobjectmanipulate.h
branchRCL_3
changeset 15 3cebc1a84278
parent 3 b73a2e62868f
child 27 4a4892eec172
equal deleted inserted replaced
14:646a02f170b9 15:3cebc1a84278
   213 		 * Remove object using it's id
   213 		 * Remove object using it's id
   214 		 *
   214 		 *
   215 		 * @param aBuffer id's to remove
   215 		 * @param aBuffer id's to remove
   216 		 * @param aCount id's count
   216 		 * @param aCount id's count
   217 		 * @param aIdArray result id's
   217 		 * @param aIdArray result id's
   218 		 * @param aUserLevel not used - delete
   218          * @param aRelationIds result relation id's
   219 		 * @param aLockList list of locked objects
   219          * @param aEventIds result event id's
       
   220          * @param aUrisRequired determines if uris are to be fetched
       
   221          * @param aRemovedItemUriArray result uris
   220 		 */
   222 		 */
   221 		void RemoveObjectsByIdL( CMdCSerializationBuffer& aBuffer, TInt aCount,
   223 		void RemoveObjectsByIdL( CMdCSerializationBuffer& aBuffer, TInt aCount,
   222 				RArray<TItemId>& aIdArray, RArray<TItemId>& aRelationIds, 
   224 				RArray<TItemId>& aIdArray, RArray<TItemId>& aRelationIds, 
   223 				RArray<TItemId>& aEventIds );
   225 				RArray<TItemId>& aEventIds,
       
   226 				TBool aUrisRequired, 
       
   227 				RPointerArray<HBufC>& aRemovedItemUriArray);
   224 
   228 
   225 		/**
   229 		/**
   226 		 * Remove object using it's URI's
   230 		 * Remove object using it's URI's
   227 		 *
   231 		 *
   228 		 * @param aBuffer URI's to remove
   232 		 * @param aBuffer URI's to remove
   229 		 * @param aCount URI's count
   233 		 * @param aCount URI's count
   230 		 * @param aIdArray result id's
   234 		 * @param aIdArray result object id's
   231 		 * @param aUserLevel not used - delete
   235          * @param aRelationIds result relation id's
   232 		 * @param aLockList list of locked objects
   236          * @param aEventIds result event id's
   233 		 */
   237          * @param aRemovedItemUriArray result uris
       
   238          */
   234 		void RemoveObjectsByUriL( CMdCSerializationBuffer& aBuffer, TInt aCount,
   239 		void RemoveObjectsByUriL( CMdCSerializationBuffer& aBuffer, TInt aCount,
   235 				RArray<TItemId>& aIdArray, RArray<TItemId>& aRelationIds, 
   240 				RArray<TItemId>& aIdArray, RArray<TItemId>& aRelationIds, 
   236 				RArray<TItemId>& aEventIds );
   241 				RArray<TItemId>& aEventIds,
       
   242 				TBool aUrisRequired,
       
   243 				RPointerArray<HBufC>& aRemovedItemUriArray );
   237 
   244 
   238 		/**
   245 		/**
   239 		 * search for object uri
   246 		 * search for object uri
   240 		 *
   247 		 *
   241 		 * @param aUri object uri to search for
   248 		 * @param aUri object uri to search for
   242 		 * @param aFlags return found object flags
   249 		 * @param aFlags return found object flags
   243 		 * @return object id
   250 		 * @return object id
   244 		 */
   251 		 */
   245 		TItemId SearchObjectByUriL( const TDesC16& aUri, TUint32& aFlags );
   252 		TItemId SearchObjectByUriL( const TDesC16& aUri, TUint32& aFlags );
   246 
   253 
       
   254         /**
       
   255          * search for object uri
       
   256          *
       
   257          * @param aId object id to search uri for
       
   258          * @param aFlags return found object flags
       
   259          * @return reference to object uri
       
   260          */
       
   261 		HBufC*& SearchObjectUriByIdL( const TItemId aId, TUint32& aFlags );
       
   262 		
   247 		/**
   263 		/**
   248 		 * update freetext (add and remove)
   264 		 * update freetext (add and remove)
   249 		 */
   265 		 */
   250 		void UpdateFreeTextL( CMdCSerializationBuffer& aBuffer, TInt aCount,
   266 		void UpdateFreeTextL( CMdCSerializationBuffer& aBuffer, TInt aCount,
   251 				TItemId aObjectId );
   267 				TItemId aObjectId );
   527          */
   543          */
   528         const CMdsNamespaceDef* iNamespaceDef;
   544         const CMdsNamespaceDef* iNamespaceDef;
   529         
   545         
   530         /**
   546         /**
   531          * common usage buffers (initial size = 1024)
   547          * common usage buffers (initial size = 1024)
   532          * NOT THREAD SAFE!
       
   533          */
   548          */
   534         RArray<TLockBuffer> iBuffers;
   549         RArray<TLockBuffer> iBuffers;
   535 
   550 
   536 		/**
   551 		/**
   537 		 * BaseObject definition, used in addobject and addproperty
   552 		 * BaseObject definition, used in addobject and addproperty
   548 	     */
   563 	     */
   549 	    CMdSIdentifierGenerator* iGenerator;
   564 	    CMdSIdentifierGenerator* iGenerator;
   550 
   565 
   551 	    CMdSObjectLockList& iLockList;
   566 	    CMdSObjectLockList& iLockList;
   552 	    
   567 	    
       
   568 	    // Last handled uri.
       
   569 	    HBufC* iUri;
       
   570 	
   553 	    TBuf<256> iLastAddedObjName;
   571 	    TBuf<256> iLastAddedObjName;
   554 	    
   572 	    
   555 	private:
   573 	private:
   556 		class RClauseBuffer
   574 		class RClauseBuffer
   557 					// NOT THREAD SAFE !!!!!
       
   558 			{
   575 			{
   559 			public:
   576 			public:
   560 				RClauseBuffer(CMdSSqlObjectManipulate& aSOM, TInt aSize = 1024);
   577 				RClauseBuffer(CMdSSqlObjectManipulate& aSOM, TInt aSize = 1024);
   561 				
   578 				
   562 				CMdsClauseBuffer& BufferL();
   579 				CMdsClauseBuffer& BufferL();