необходима запись в базу данных в методе обратного вызова NSNotification - PullRequest
1 голос
/ 26 мая 2011

Я звоню в веб-сервис, передаю параметр и затем регистрирую наблюдателя в классе viewcontroller (чтобы уведомить о завершении загрузки):

[self callWebservice:parameter1];
[[NSNotificationCenter defaultCenter] addObserver:self    selector:@selector(dataDownloadComplete:) name:OP_DataComplete object:nil];

, а затем опубликуйте уведомление в моем классе парсера:

-(void)connectionDidFinishLoading:(NSURLConnection *)connection method of the parser  class. [[NSNotificationCenter defaultCenter] postNotificationName:OP_DataComplete object:nil];

В методе обратного вызова dataDownloadComplete: я хотел бы повторно вызывать один и тот же веб-сервис несколько раз.

-(void)dataDownloadComplete
{
 if([anArray objectAtindex:N]<10)
  {
   [self callWebservice:parameterN];
   NSLog(@"This is getting called everytime (9 times)");
   [self writeintoDatabase];
   N++;
  }
}

Но проблема в том, что я хочу записать в базу данных, какие данные я загружаю из сервиса. Запись в БД происходит странным образом для вызова 'parameter1' и продолжается для остальных, но не для параметра 9 (который мне тоже нужен). Обратите внимание, что журнал вызывается все 9 раз, хотя. Код writeintoDatabase идеально подходит. Пожалуйста помоги. Заранее спасибо.

...