1 /* 2 Copyright (C) 2004-2005 SKYRIX Software AG 3 4 This file is part of OpenGroupware.org. 5 6 OGo is free software; you can redistribute it and/or modify it under 7 the terms of the GNU Lesser General Public License as published by the 8 Free Software Foundation; either version 2, or (at your option) any 9 later version. 10 11 OGo is distributed in the hope that it will be useful, but WITHOUT ANY 12 WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 14 License for more details. 15 16 You should have received a copy of the GNU Lesser General Public 17 License along with OGo; see the file COPYING. If not, write to the 18 Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 19 02111-1307, USA. 20 */ 21 22 #ifndef __GDLContentStore_GCSFieldInfo_H__ 23 #define __GDLContentStore_GCSFieldInfo_H__ 24 25 26 /* 27 GCSFieldInfo 28 29 The field info inside an .ocs schema file. 30 31 The field info objects are stored in an GCSFolderType. 32 */ 33 34 @class NSString, NSArray; 35 36 @interface GCSFieldInfo : NSObject 37 { 38 NSString *columnName; 39 NSString *sqlType; 40 BOOL allowsNull; 41 BOOL isPrimaryKey; 42 } 43 44 + (NSArray *)fieldsForPropertyList:(NSArray *)_plist; 45 - (id)initWithPropertyList:(id)_plist; 46 47 /* accessors */ 48 49 - (NSString *)columnName; 50 - (NSString *)sqlType; 51 - (BOOL)doesAllowNull; 52 - (BOOL)isPrimaryKey; 53 54 /* generating SQL */ 55 56 - (NSString *)sqlCreateSection; 57 58 @end 59 60 #endif /* __GDLContentStore_GCSFieldInfo_H__ */ 61