NSMutableArray *lResultArray = [[NSMutableArray alloc] init];
if ([m_cDataArray count] > 0) {
for (int i = 0; i < [m_cDataArray count]; i++) {
NSDictionary *lDataDic = [m_cDataArray objectAtIndex:i];
NSString *lCurSeqCounter = [lDataDic objectForKey:@"seqCounter"];
//To add the initial object in the array
if ([lResultArray count] > 0 && ![[lResultArray objectAtIndex:[lResultArray count]-1] isEqualToDictionary:lDataDic]) {
[lResultArray addObject:lDataDic];
}
else if ([lResultArray count] == 0) {
[lResultArray addObject:lDataDic];
}
if (i < [m_cDataArray count] - 1) {
NSDictionary *lNextDict = [m_cDataArray objectAtIndex:i+1];
NSString *lNextSeqCounter = [lNextDict objectForKey:@"seqCounter"];
if ([lCurSeqCounter isEqualToString:lNextSeqCounter]) {
[lResultArray addObject:lNextDict];
}
else {
NSMutableDictionary *lResultDictionary = [[NSMutableDictionary alloc] init];
[lResultDictionary setValue:lResultArray forKey:@"resData"];
[lResultDictionary setValue:lCurSeqCounter forKey:@"seqCounter"];
NSLog(@"lResultDictionary %@", lResultDictionary);
[self.m_cClockArray addObject:lResultDictionary];
NSLog(@"ClockArray : %@", self.m_cClockArray);
[lResultArray removeAllObjects];
[lResultDictionary release];
}
}
else if (i == [m_cDataArray count]-1) {
NSMutableDictionary *lPrevDict = [m_cDataArray objectAtIndex:i -1];
NSString *lPrevSeqCounter = [lPrevDict objectForKey:@"seqCounter"];
if ([lPrevSeqCounter isEqualToString:lCurSeqCounter]) {
[lResultArray addObject:lDataDic];
NSMutableDictionary *lResultDictionary = [[NSMutableDictionary alloc] init];
[lResultDictionary setValue:lResultArray forKey:@"resData"];
[lResultDictionary setValue:lCurSeqCounter forKey:@"seqCounter"];
NSLog(@"lResultDictionary %@", lResultDictionary);
[self.m_cClockArray addObject:lResultDictionary];
NSLog(@"ClockArray : %@", self.m_cClockArray);
[lResultArray removeAllObjects];
[lResultDictionary release];
}
else {
[lResultArray removeAllObjects];
[lResultArray addObject:lDataDic];
NSMutableDictionary *lResultDictionary = [[NSMutableDictionary alloc] init];
[lResultDictionary setValue:lResultArray forKey:@"resData"];
[lResultDictionary setValue:lCurSeqCounter forKey:@"seqCounter"];
NSLog(@"lResultDictionary %@", lResultDictionary);
[self.m_cClockArray addObject:lResultDictionary];
NSLog(@"ClockArray : %@", self.m_cClockArray);
[lResultDictionary release];
}
}
}//for
}//if