- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- (NSManagedObject *)entityForName:(NSString *)entityName withServerID:(NSString *)serverID inContext:(NSManagedObjectContext *)context
{
if ((entityName==nil) || ([entityName isEqualToString:@""]) || (serverID==nil) || ([serverID isEqualToString:@""]))
{
return nil;
};
NSFetchRequest *fr=[[NSFetchRequest alloc] init];
[fr setEntity:[NSEntityDescription entityForName:entityName inManagedObjectContext:context]];
[fr setPredicate:[NSPredicate predicateWithFormat:@"server_id == %@", serverID]];
[fr setIncludesPropertyValues:YES];
NSError *err;
NSArray *res=[context executeFetchRequest:fr error:&err];
if (err!=nil)
{
NSLog(@"PANIC: PTDataFetchHelper: entityWithName:serverID:inContext: an error occured while gathering objects. %@ | %@ | %@", err.localizedDescription, err.localizedFailureReason, err.localizedRecoverySuggestion);
return nil;
}
else
{
if ([res count]<=0)
{
NSLog(@"[res count]<=0");
//NSLog(@"PTDataFetchHelper: findEntity:%@ withServerID:%@ inContext: not found", entityName, serverID);
return nil;
}
else if([res count]>1)
{
NSLog(@"PANIC: PTDataFetchHelper: entityWithName:serverID:inContext: unable to fetch single object. server_id uniqueness error");
return nil;
}
else //[res count] == 1
{
return [res objectAtIndex:0];
};
};
}
krypt 22.07.2013 09:43 # 0
Xtasy 22.07.2013 09:55 # 0
krypt 22.07.2013 10:12 # 0
Аффтор ещё не понал, что nil'у можно слать сообщения. Это нормально :)
А вообще код похож на автосгенерированный, а если так - кого-то ждёт большой сюрприз при обновлении CoreData-биндингов.
tirinox 24.07.2013 11:22 # +1
Xtasy 24.07.2013 16:11 # 0
Например,
я бы заменил на
bormand 24.07.2013 16:15 # +1
Xtasy 24.07.2013 16:41 # +1
bormand 24.07.2013 18:51 # 0
Ну тогда вот такой вариант еще. Просто мне использование умножения тут кажется немного странным...
Xtasy 25.07.2013 05:02 # 0
UncleAli 24.07.2013 23:26 # 0
2. Почему бы не накатить категорию для NSString, а-ля
Сравните по читаемости.
Xtasy 25.07.2013 05:04 # 0
2) Категории - стильно, модно и объективно, но "isNilOrEmpty" пованивает какой-то грязной жабой.
bormand 25.07.2013 05:56 # −1
А что такое категории в терминологии объективного си?
Xtasy 25.07.2013 07:42 # +2
Удобно, когда нужно дописать пару методов к стандартному классу.
UncleAli 25.07.2013 22:03 # 0
Вы таки что-то имеете пrотив Java?
Xtasy 26.07.2013 11:33 # −1
Олсо, возникло непреодолимое желание на досуге поковырять Скалку. Не знаю, что со мной.
bormand 26.07.2013 11:35 # +1
Пока не приходит желание ковырять Хаскель - все в порядке ;)
notxcain 26.07.2013 12:46 # +1
zummenix 30.07.2013 09:49 # 0