Commit Graph

37 Commits

Author SHA1 Message Date
6ed1a40852 Added corba-like exception system to CamelFolder. The exception system is
* Added corba-like exception system to CamelFolder.
The exception system is not finished but I wanted
the async and event implementation to get this right
from the beginning.

svn path=/trunk/; revision=1256
1999-09-23 19:26:54 +00:00
bb40dc75ee forgotten files
svn path=/trunk/; revision=1220
1999-09-08 19:03:51 +00:00
68ceb01f60 Summary files are here and work !!!
1999-09-08  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/mh-summary.c
	(mh_load_summary):
	(mh_save_summary):
	(mh_create_summary):
	implemented summary (files) for MH folders.

	* camel/providers/MH/camel-mh-folder.c
	(_get_message_by_uid): implemented.
	(camel_mh_folder_class_init):
	(_get_message_uid): implemented

svn path=/trunk/; revision=1219
1999-09-08 18:59:27 +00:00
4a3be14666 impemented.
1999-09-08  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c
	(_get_message_by_uid): impemented.

	* camel/camel-folder.c:
	(camel_folder_get_message_uid_by_number):
	const'ified uid.
	(camel_folder_get_message_by_uid): idem
	removed stupid camel_folder_get_message_uid_by_number
	method.

svn path=/trunk/; revision=1215
1999-09-08 12:20:30 +00:00
ed7fc1eaa2 More work on UID list in Mh provider.
1999-09-08  bertrand  <Bertrand.Guiheneuf@aful.org>

	* tests/ui-tests/store_listing.c (close_all):
	close all open folders and stores. (necessary
	for UID list saving ).

	* camel/providers/MH/mh-uid.c (mh_generate_uid_list):
	fix: store UID list in CamelMHFolder object.

	* camel/providers/MH/camel-mh-folder.c (_open):
	read or create UID list.
	(_close): save UID list.

svn path=/trunk/; revision=1192
1999-09-07 23:08:03 +00:00
dba244cf65 oops
svn path=/trunk/; revision=1191
1999-09-07 15:46:49 +00:00
598dc5e556 correct parameter decl (const)
1999-09-07  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/md5-utils.c (md5_get_digest_from_file):
	correct parameter decl (const)

	* camel/md5-utils.h: typo.

	* camel/providers/MH/mh-uid.c
	More work on UID stuff for MH.
	(mh_save_uid_list):
	(mh_load_uid_list):
	(mh_generate_uid_list):
	new funcs. Manage on-disk uid list.

	* camel/providers/MH/mh-utils.c (mh_is_a_message_file):
	Util routines live here now.

svn path=/trunk/; revision=1190
1999-09-07 15:45:57 +00:00
9043c1aa7a camel/md5-utils.c Documented all funcs.
1999-09-07  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/md5-utils.c
	Documented all funcs.

	(md5_get_digest_from_stream):
	correct typo.
	(md5_get_digest_from_file):
	same typo corrected.

svn path=/trunk/; revision=1189
1999-09-06 23:27:12 +00:00
edf81a5e24 raw routines are declared public now. Md5 use has to be versatile.
1999-09-07  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/md5-utils.h :
	raw routines are declared public now.
	Md5 use has to be versatile.

	* camel/providers/MH/mh-uid.c (mh_uid_get_for_file):
	new func. Returns an UID for an MH message.

svn path=/trunk/; revision=1187
1999-09-06 21:58:39 +00:00
4e4eb45bf6 use folder summary instead of opening all messages.
1999-09-05  bertrand  <Bertrand.Guiheneuf@aful.org>

	* tests/ui-tests/store_listing.c (show_folder_messages):
	use folder summary instead of opening all messages.

	* camel/providers/MH/camel-mh-folder.c (_create_summary):
	basic and highly non-efficient summary implementation.
	Should be seen as a proof of concept only.
	subfolder summary still has to be implemented.

	* camel/providers/maildir/camel-maildir-folder.c (_init_with_store):
	hasn't summary for the moment.
	* camel/providers/maildir/camel-maildir-folder.c
	cosmetic changes.

svn path=/trunk/; revision=1178
1999-09-05 16:15:12 +00:00
0fe7101224 started summary implementation. (_open): correct use of open.
1999-09-04  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c (_create_summary):
	started summary implementation.
	(_open): correct use of open.

	* camel/camel-folder.c (camel_folder_get_summary):
	get folder associated summary object.

svn path=/trunk/; revision=1177
1999-09-04 19:33:31 +00:00
d938232d3c Address update
svn path=/trunk/; revision=1147
1999-08-29 22:13:34 +00:00
68a9dad22b text parameter declared const
1999-08-28  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/camel-mime-part.c (camel_mime_part_set_text):
	text parameter declared const

	* camel/camel-mime-part-utils.c (camel_mime_part_store_stream_in_buffer):
	actually test correctly nb_bytes_read_chunk is >0

	* camel/gstring-util.c:
	* camel/gmime-content-field.c:
	* camel/providers/MH/camel-mh-folder.c:
	* camel/camel-stream-fs.c:
	include string.h

	* camel/camel-stream-mem.c (_write): return
	the numver of written bytes.

	* camel/camel-stream-buffered-fs.c (_eos):
	return sthg

	* camel/camel-stream.c (default_camel_seek):
	return something.

* Started to work on new recipient code.
* fixed various leaks.

svn path=/trunk/; revision=1146
1999-08-29 15:57:47 +00:00
6881fd1bf7 new class. Will handle all sort of information media (Mime mail messages,
1999-08-24  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/camel-medium.c (camel_medium_class_init):
	new class. Will handle all sort of information media
	(Mime mail messages, Lotus Notes  mail messages,
	postit notes, faxes, who knows .... :)
	CamelMimePart will inherit from it.

	* camel/camel-mime-part.c (_set_disposition):
	(_set_description):
	description and disposition parameters are now const.


	* camel/gmime-content-field.c (gmime_content_field_free): added
	assertion code.

	* camel/providers/MH/camel-mh-folder.c (_get_message):
	uses buffered stream.

	* camel/camel-stream-buffered-fs.c:
	new stream to accelerate file ops.

Thanks to jwz, I've decided to add a level of abstraction to Camel.
In the future, it should be able to handle other mail systems, but
also non-mail information vehicles.

Enough for today. Roller time!

svn path=/trunk/; revision=1140
1999-08-24 21:01:10 +00:00
8efa5bea54 Now has a popup menu on mailbox tree to allow easier tests. Implemented
1999-08-16  bertrand  <Bertrand.Guiheneuf@aful.org>

	* tests/ui-tests/store_listing.c:
	Now has a popup menu on mailbox tree to allow
	easier tests. Implemented the copy stuff.
	Works well for the MH provider :)))

	* camel/providers/MH/camel-mh-folder.c (_copy_message_to):
	Test MH provider fast copy implemented.

svn path=/trunk/; revision=1119
1999-08-16 15:08:16 +00:00
f5aadb31ca new method.
1999-08-15  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/camel-folder.c	(_copy_message_to): new method.

svn path=/trunk/; revision=1118
1999-08-15 21:08:34 +00:00
fb5218e353 moved the active list readjustment code here. Much saner, providers won't
1999-08-15  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/camel-folder.c (camel_folder_expunge):
	moved the active list readjustment code here.
	Much saner, providers won't have to worry about
	that.

	* camel/providers/MH/camel-mh-folder.c (_expunge):
	no more active list readjustment stuff.

	* camel/camel-folder.h: the expunge virtual no more
	returns a list of expunged messages. Now providers
	only have to set the expunge flag on the expunged
	messages.

	* camel/camel-folder.c (camel_folder_get_message):
	moved the caching code here. Finally, I don't want
	providers to crash the libs with a bad message cache
	implementation.
	(_close): do not call the CamelFolder virtual expunge
	method directly, use camel_folder_expunge() instead.
	(camel_folder_expunge): added the want_list param.
	The client can decide if it wants the expunged message
	list or not. If yes, it'll have to unref the messages
	itself.

svn path=/trunk/; revision=1117
1999-08-15 20:40:11 +00:00
e579dc553c Implemented deletion/expunge mechanism.
1999-08-14  bertrand  <Bertrand.Guiheneuf@aful.org>

	* tests/ui-tests/store_listing.c (delete_selected_messages):
	(expunge_selected_folders):
	Implemented deletion/expunge mechanism.

	* camel/camel-folder.c (_get_message):
	Added some debug info.

	* camel/providers/MH/camel-mh-folder.c (_expunge):
	implemented and tested.

	* camel/camel-mime-message.c (_set_flag):
	changed the old braindead implementation.
	boolean are inserted in the flag hash
	table casted as gpointers.


	* camel/camel-mime-message.c: indentation fix

svn path=/trunk/; revision=1114
1999-08-14 18:50:46 +00:00
920be6e190 default implementation to be called first by providers methods. It looks
1999-08-13  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/camel-folder.c (_get_message): default implementation
	to be called first by providers methods. It looks in the
	folder message list (in memory) to see if the message has
	not already been retrieved, and in this case, returns
	the same CamelMimeMessage object

Caching messages in folder kworks. Providers will have to
do their job correctly.
Enough for today.

svn path=/trunk/; revision=1113
1999-08-13 18:28:56 +00:00
96b7f9a5fd compilation and runtime fixes.
1999-08-12  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/camel-session.c (camel_session_get_store_for_protocol):
	compilation and runtime fixes.

	* camel/providers/MH/camel-mh-store.c (_init):
	synced with CamelStore.

	* camel/camel-store.c (_init):
	in CamelStore::init, url_name is now const.
	disabled url_name copy.

Last check in did not even compile...

svn path=/trunk/; revision=1107
1999-08-12 11:00:04 +00:00
a478ee7e9d new file. MH provider registration stuff.
1999-08-12  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-provider.c:
	new file. MH provider registration stuff.

	* camel/camel-provider.c (camel_provider_register_as_module):
	load a provider from a shared object (plugin).
	(camel_provider_register): register a provider
	"by hand". Used for statically defined providers.

	* tests/test7.c: new test.
	tests providers loading framework.

Providers modules loading Works !!! :))))

svn path=/trunk/; revision=1105
1999-08-11 22:34:09 +00:00
6cb08f0bc1 some test files
svn path=/trunk/; revision=1101
1999-08-10 11:53:46 +00:00
4c3eb87749 fix. In MH, message number is not related to message position in folder.
1999-08-08  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c (_get_message):
	fix. In MH, message number is not related to
	message position in folder.

svn path=/trunk/; revision=1097
1999-08-08 20:02:02 +00:00
e5d44122b8 util func. (_get_message_count): implemented.
1999-08-08  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c (_is_a_message_file):
	util func.
	(_get_message_count): implemented.

svn path=/trunk/; revision=1096
1999-08-08 19:10:05 +00:00
db89b1a62f updated some autogen doc stuff. Still don't understand warnings :(
1999-08-06  bertrand  <Bertrand.Guiheneuf@aful.org>

	* devel-docs/camel/:
	updated some autogen doc stuff.
	Still don't understand warnings :(

	* camel/camel-data-wrapper.c:
	* camel/providers/MH/camel-mh-store.c:
	* camel/url-util.c:
	* camel/gmime-content-field.c:
	* camel/camel-store.c:
	various inline doc corrections.

	* camel/camel-folder.c (get_message_count):
	new method. Returns the number of message
	in the folder.

svn path=/trunk/; revision=1092
1999-08-06 17:28:26 +00:00
f3e57fa18f stat was not testing the good file. Fixed.
1999-08-06  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c (_list_subfolders):
	stat was not testing the good file. Fixed.

svn path=/trunk/; revision=1090
1999-08-06 15:12:47 +00:00
cf2f1c428f add debug information (_list_subfolders): test if first char in folder
1999-08-06  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c (_exists): add debug information
	(_list_subfolders): test if first char in folder name is not '.'
	before adding it to the folder list.

	* camel/camel-store.c (_init):
	disable session check temporarily
	(_get_separator):
	(_get_folder): new static func.
	Fixed several oddities in class definition.

	* camel/providers/MH/camel-mh-store.c (camel_mh_store_get_type):
	parent type is CAMEL_STORE_TYPE not CAMEL_FOLDER_TYPE

	* camel/camel-store.c:
	prent class is CamelServiceClass not GtkObjectClass

	* camel/url-util.c :
	cosmetic changes + use of const when possible.
	(find_host):
	fix a bug: when there is no host and no port don't skip the '/'
	all static find_* func are now named _func_*
	(g_url_free): destructor func.
	cache field has been disabled. Constructing the url string
	won't be too slow and will occur rarely enough that we
	do not need to add complexity to this code.

	* camel/providers/MH/camel-mh-store.c:
	parent class is CamelStorClass not GtkObjectClass

svn path=/trunk/; revision=1087
1999-08-06 14:17:27 +00:00
7e8e444982 test mh provider.
1999-08-05  bertrand  <Bertrand.Guiheneuf@aful.org>

	* tests/test4.c:
	test mh provider.

	* camel/providers/MH/camel-mh-folder.c (_get_message):
	implemented

svn path=/trunk/; revision=1083
1999-08-05 21:25:53 +00:00
616d409f7c Some notes.
1999-08-05  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/README.HACKING:
	Some notes.

	* camel/CODING.STYLE:
	short note about coding style.

	* camel/README.COPYRIGHT:
	Note about copyright policy.

	* camel/providers/MH/camel-mh-folder.c (_list_subfolders):
	minor typo fixes.

svn path=/trunk/; revision=1081
1999-08-05 16:02:54 +00:00
bbd88805c2 implemented.
1999-08-04  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c (_list_subfolders):
	implemented.

svn path=/trunk/; revision=1077
1999-08-04 17:30:17 +00:00
b92cd47ad5 finshed implementation (_delete_messages): implemented.
1999-08-04  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c (_delete):
	finshed implementation
	(_delete_messages): implemented.

svn path=/trunk/; revision=1076
1999-08-04 16:36:54 +00:00
0f2d4dd115 Started implementing mh store/folder as a test provider. Next will be pop3.
1999-08-03  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/providers/MH/camel-mh-folder.c (_create):
	implemented.
	(_delete): started implementation.

	* camel/camel-folder.c (_get_folder): default implementation
	calls camel_store_get_folder ().

	* camel/providers/MH/camel-mh-folder.c (_init_with_store):
	implemented.

	* camel/camel-folder.h (struct _CamelFolder):
	remove useless exist_on_store field.

	* camel/camel-folder.c (_exists):
	do not use exist_on_store field.

svn path=/trunk/; revision=1073
1999-08-03 18:08:04 +00:00
b9daf0016b new public functions (_set_name): set full_path.
* camel/camel-folder.c (camel_folder_set_name):
	(camel_folder_get_name):
	new public functions
	(_set_name): set full_path.

	(_set_full_name):
	(camel_folder_set_full_name):
	commented out this functions def.
	It would make things very difficult to handle, and would not
	be very useful.

	* camel/providers/MH/camel-mh-store.h:
	* camel/providers/MH/camel-mh-store.c (camel_mh_store_set_toplevel_dir):
	(camel_mh_store_get_toplevel_dir):
	* camel/providers/MH/camel-mh-folder.c (_set_name):
	* camel/providers/MH/camel-mh-folder.h:
	use (gchar *) instead of (GString *) everywhere.
	use const when necessary.

	* camel/camel-folder.h (struct _CamelFolder):
	removed unused message_list field.

svn path=/trunk/; revision=1072
1999-08-03 15:37:35 +00:00
bf0960ab57 message number funcs.
1999-05-18  bertrand  <Bertrand.Guiheneuf@inria.fr>

	* camel/camel-mime-message.c (*_message_number):
	message number funcs.

svn path=/trunk/; revision=930
1999-05-18 07:59:57 +00:00
c6cdd4b2af admin cvs work
svn path=/trunk/; revision=891
1999-05-07 08:00:36 +00:00
ed6323e978 more test implementation.
1999-04-22  bertrand <Bertrand.Guiheneuf@inria.fr>

	* camel/providers/MH/camel-mh-store.c:
	more test implementation.

	* camel/camel-store.c (camel_store_get_type): typo fix

A lot of small adds and corrections.

svn path=/trunk/; revision=867
1999-04-21 22:45:49 +00:00
b23f36ba14 start test provider.
1999-04-21  bertrand <Bertrand.Guiheneuf@inria.fr>

	* camel/providers/MH/camel-mh-folder.c (camel_mh_folder_get_type):
	start test provider.

svn path=/trunk/; revision=864
1999-04-21 17:30:54 +00:00