OCSFolder.h \
OCSFolderManager.h \
OCSFolderType.h \
+ OCSChannelManager.h \
libOGoContentStore_OBJC_FILES += \
OCSContext.m \
OCSFolder.m \
OCSFolderManager.m \
OCSFolderType.m \
+ OCSChannelManager.m \
-include GNUmakefile.preamble
include $(GNUSTEP_MAKEFILES)/library.make
--- /dev/null
+/*
+ Copyright (C) 2004 SKYRIX Software AG
+
+ This file is part of OpenGroupware.org.
+
+ OGo is free software; you can redistribute it and/or modify it under
+ the terms of the GNU Lesser General Public License as published by the
+ Free Software Foundation; either version 2, or (at your option) any
+ later version.
+
+ OGo is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
+ License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with OGo; see the file COPYING. If not, write to the
+ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA.
+*/
+// $Id$
+
+#ifndef __OGoContentStore_OCSChannelManager_H__
+#define __OGoContentStore_OCSChannelManager_H__
+
+#import <Foundation/NSObject.h>
+
+@interface OCSChannelManager : NSObject
+{
+}
+
+@end
+
+#endif /* __OGoContentStore_OCSChannelManager_H__ */
--- /dev/null
+/*
+ Copyright (C) 2004 SKYRIX Software AG
+
+ This file is part of OpenGroupware.org.
+
+ OGo is free software; you can redistribute it and/or modify it under
+ the terms of the GNU Lesser General Public License as published by the
+ Free Software Foundation; either version 2, or (at your option) any
+ later version.
+
+ OGo is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
+ License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with OGo; see the file COPYING. If not, write to the
+ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA.
+*/
+// $Id$
+
+#include "OCSChannelManager.h"
+#include "common.h"
+
+@implementation OCSChannelManager
+
+- (void)dealloc {
+ [super dealloc];
+}
+
+@end /* OCSChannelManager */
#import <Foundation/NSObject.h>
+@class NSString, NSURL, NSNumber;
+
@interface OCSFolder : NSObject
{
+ NSNumber *folderId;
+ NSString *folderName;
+ NSString *rootName;
+ NSString *path;
+ NSURL *location;
+ NSString *folderType;
}
+/* accessors */
+
+- (NSNumber *)folderId;
+- (NSString *)folderName;
+- (NSString *)rootName;
+- (NSString *)path;
+- (NSURL *)location;
+- (NSString *)folderType;
+
@end
#endif /* __OGoContentStore_OCSFolder_H__ */
[super dealloc];
}
+/* accessors */
+
+- (NSNumber *)folderId {
+ return self->folderId;
+}
+
+- (NSString *)folderName {
+ return self->folderName;
+}
+- (NSString *)rootName {
+ return self->rootName;
+}
+- (NSString *)path {
+ return self->path;
+}
+
+- (NSURL *)location {
+ return self->location;
+}
+
+- (NSString *)folderType {
+ return self->folderType;
+}
+
+/* description */
+
+- (NSString *)description {
+ NSMutableString *ms;
+
+ ms = [NSMutableString stringWithCapacity:256];
+ [ms appendFormat:@"<0x%08X[%@]:", self, NSStringFromClass([self class])];
+
+ if (self->folderId)
+ [ms appendFormat:@" id=%@", self->folderId];
+ else
+ [ms appendString:@" no-id"];
+
+ if (self->path) [ms appendFormat:@" path=%@", self->path];
+ if (self->folderType) [ms appendFormat:@" type=%@", self->folderType];
+ if (self->location) [ms appendFormat:@" location=%@", self->location];
+
+ [ms appendString:@">"];
+ return ms;
+}
+
@end /* OCSFolder */
OCSFolderManager - manages folders
OCSFolderType - the mapping info for a specific folder-type
OCSFieldInfo - mapping info for one 'quick field'
+ OCSChannelManager - maintains EOAdaptorChannel objects
TBD:
- field 'extractor'
--- /dev/null
+-- $Id$
+--
+-- (C) 2004 SKYRIX Software AG
+--
+
+CREATE SEQUENCE SOGo_folder_info_seq;
+
+CREATE TABLE SOGo_folder_info (
+ folderId INTEGER
+ DEFAULT nextval('SOGo_folder_info_seq')
+ NOT NULL
+ PRIMARY KEY, -- the primary key
+ path VARCHAR(255) NOT NULL, -- the full path to the folder 'xyz/Cal'
+ rootName VARCHAR(255) NOT NULL, -- just the root path
+ folderName VARCHAR(255) NOT NULL, -- last path component
+ location VARCHAR(2048) NOT NULL, -- URL to database of the folder
+ folderType VARCHAR(255) NOT NULL -- the folder type ...
+);
+
+INSERT INTO SOGo_folder_info
+ ( path, rootname, foldername, location, foldertype )
+VALUES
+ ( 'helge/Calendar', 'helge', 'Calendar',
+ 'http://OGo:OGo@localhost/OGo', 'Appointment' );