131 * @param aMdsIds Album MDS ID to be removed. |
131 * @param aMdsIds Album MDS ID to be removed. |
132 * @param aCompress If ETrue, then iAlbums is compressed, |
132 * @param aCompress If ETrue, then iAlbums is compressed, |
133 * otherwise not. |
133 * otherwise not. |
134 * @return ETrue if album was found and removed. |
134 * @return ETrue if album was found and removed. |
135 */ |
135 */ |
136 TBool RemoveAlbum( TUint32 aMdsId, TBool aCompress ); |
136 TBool RemoveAlbumL( TUint32 aMdsId, TBool aCompress ); |
137 |
137 |
138 /** |
138 /** |
139 * Fetches albums from MDS. This is called from MDS insert event. |
139 * Fetches albums from MDS. This is called from MDS insert event. |
140 * |
140 * |
141 * @param aAlbumIds Album IDs to fetch. |
141 * @param aAlbumIds Album IDs to fetch. |
142 */ |
142 */ |
143 void AddAlbumsFromMdsL( RArray<TUint32>& aAlbumIds ); |
143 void AddAlbumsFromMdsL( RArray<TUint32>& aAlbumIds ); |
144 |
144 |
|
145 /** |
|
146 * Updates albums from MDS. This is called from MDS modify event. |
|
147 * |
|
148 * @param aAlbumIds Album IDs to update. |
|
149 */ |
|
150 void UpdateAlbumsFromMdsL( RArray<TUint32>& aAlbumIds ); |
|
151 |
|
152 /** |
|
153 * Updates album attributes, does not write to MDS. Adds |
|
154 * modify event to iCollection.iMessageList if necessarry. |
|
155 * |
|
156 * @param aAlbum New values are read from this. |
|
157 * @return ETrue if album was modified, EFalse otherwise. |
|
158 */ |
|
159 TBool UpdateAlbumL( const CMPXMedia& aAlbum ); |
|
160 |
|
161 protected: |
|
162 |
145 /** |
163 /** |
146 * From MVcxMyVideosMdsAlbumsObserver. |
164 * From MVcxMyVideosMdsAlbumsObserver. |
147 * Process albums arriving from MDS. Response to VcxMyVideosMdsAlbums::GetAlbumsL. |
165 * Process albums arriving from MDS. Response to VcxMyVideosMdsAlbums::GetAlbumsL. |
148 */ |
166 */ |
149 void HandleGetAlbumsRespL( CMPXMedia* aAlbumList ); |
167 void HandleGetAlbumsRespL( CMPXMedia* aAlbumList ); |
222 * From MVcxMyVideosMdsAlbumsObserver. |
240 * From MVcxMyVideosMdsAlbumsObserver. |
223 * Relation events from MDS. This object is set as an observer at |
241 * Relation events from MDS. This object is set as an observer at |
224 * iCollection.ConstructL, CVcxMyVideosMdsDb::NewL(..,aAlbumsObserver,..). |
242 * iCollection.ConstructL, CVcxMyVideosMdsDb::NewL(..,aAlbumsObserver,..). |
225 */ |
243 */ |
226 void HandleRelationEvent( TObserverNotificationType aType, |
244 void HandleRelationEvent( TObserverNotificationType aType, |
227 const RArray<TMdERelation>& aRelationArray ); |
245 const RArray<TMdERelation>& aRelationArray ); |
|
246 |
228 private: |
247 private: |
229 |
248 |
230 /** |
249 /** |
231 * Fills in iAlbums array. This is called when iAlbumList is ready. |
250 * Fills in iAlbums array. This is called when iAlbumList is ready. |
232 * Pointers to CVcxMyVideosVideoCache::iVideoList are not filled |
251 * Pointers to CVcxMyVideosVideoCache::iVideoList are not filled |
281 * Used in MDS operations to store MDS video (or relation) IDs. |
300 * Used in MDS operations to store MDS video (or relation) IDs. |
282 */ |
301 */ |
283 RArray<TUint32> iMdsOpTargetIds; |
302 RArray<TUint32> iMdsOpTargetIds; |
284 |
303 |
285 /** |
304 /** |
286 * Store album video data during relation deletion. This is to |
305 * Stores album video data during relation deletion. This is to |
287 * avoid second search when resp arrives. |
306 * avoid second search when resp arrives. |
288 */ |
307 */ |
289 RArray<TVcxMyVideosAlbumVideo> iRemoveFromAlbumVideos; |
308 RArray<TVcxMyVideosAlbumVideo> iRemoveFromAlbumVideos; |
290 |
309 |
291 /** |
310 /** |