metadataengine/server/inc/mdssqlobjectmanipulate.h
changeset 21 50bf9db68373
parent 20 6dfc5f825351
child 28 c461c7fa72c2
equal deleted inserted replaced
20:6dfc5f825351 21:50bf9db68373
   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 );
   536          */
   552          */
   537         const CMdsNamespaceDef* iNamespaceDef;
   553         const CMdsNamespaceDef* iNamespaceDef;
   538         
   554         
   539         /**
   555         /**
   540          * common usage buffers (initial size = 1024)
   556          * common usage buffers (initial size = 1024)
   541          * NOT THREAD SAFE!
       
   542          */
   557          */
   543         RArray<TLockBuffer> iBuffers;
   558         RArray<TLockBuffer> iBuffers;
   544 
   559 
   545 		/**
   560 		/**
   546 		 * BaseObject definition, used in addobject and addproperty
   561 		 * BaseObject definition, used in addobject and addproperty
   557 	     */
   572 	     */
   558 	    CMdSIdentifierGenerator* iGenerator;
   573 	    CMdSIdentifierGenerator* iGenerator;
   559 
   574 
   560 	    CMdSObjectLockList& iLockList;
   575 	    CMdSObjectLockList& iLockList;
   561 	    
   576 	    
       
   577 	    // Last handled uri.
       
   578 	    HBufC* iUri;
       
   579 	
   562 	    TBuf<256> iLastAddedObjName;
   580 	    TBuf<256> iLastAddedObjName;
   563 	    
   581 	    
   564 	private:
   582 	private:
   565 		class RClauseBuffer
   583 		class RClauseBuffer
   566 					// NOT THREAD SAFE !!!!!
       
   567 			{
   584 			{
   568 			public:
   585 			public:
   569 				RClauseBuffer(CMdSSqlObjectManipulate& aSOM, TInt aSize = 1024);
   586 				RClauseBuffer(CMdSSqlObjectManipulate& aSOM, TInt aSize = 1024);
   570 				
   587 				
   571 				CMdsClauseBuffer& BufferL();
   588 				CMdsClauseBuffer& BufferL();