Commit Graph

174 Commits

Author SHA1 Message Date
Ingo Weinhold
233e6dadef The whole Storage Kit now uses syscalls directly. No further need of this abstraction layer.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8693 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-28 20:08:05 +00:00
Axel Dörfler
51403af8f9 No longer needed; LibBeAdapter now only contains syscalls, and will either
be removed some day, or extended to map all syscalls from Haiku to R5.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-02 18:59:49 +00:00
Axel Dörfler
5c6dbc9b5e Removed no longer needed adapter functions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8179 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-26 14:43:35 +00:00
Axel Dörfler
86d5deed7b Some additional standard MIME types in the Be world.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6944 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-10 13:40:35 +00:00
shatty
522f702aaf header for simple AddOnMonitor BLooper subclass to run an AddOnMonitorHandler
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6456 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-01 05:50:56 +00:00
shatty
afd1e2002e basic interface
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6455 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-01 05:50:00 +00:00
shatty
e396ab580d untested version
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6401 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-29 00:24:03 +00:00
Tyler Dauwalder
ce80ee567b - Renamed CDDA to AudioSession
- Added DataSession


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5369 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-15 08:38:42 +00:00
Tyler Dauwalder
a03a04e027 - Added/moved ddm string-length and buffer-size constants to DiskDeviceDefs.h
- Converted all uses of B_{FILE,OS}_NAME_LENGTH in ddm_userland_interface.cpp
  to appropriate ddm constants.
- Made module names B_PATH_NAME_LENGTH long.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5181 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-28 00:13:11 +00:00
Ingo Weinhold
64d5c0bf73 Added enum value for our new uninitialization job.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4784 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-21 21:27:20 +00:00
Ingo Weinhold
3f54a014e5 Removed the resizeContents/force parameters from [Validate]Resize()/[Validate]Move() as discussed in July (grrr, I was lazy).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4782 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-21 21:23:33 +00:00
Ingo Weinhold
4c4e5505b0 Added BPartition::Uninitialize(). No CanUninitialize(), but
uninitialization does not affect the physical partition, anyway. The
system simply marks the partition as uninitialized for the current
session -- after rebooting it re-appears unchanged.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4777 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-21 19:13:29 +00:00
shadow303
17e6de7a37 gcc 3 fixes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-04 00:46:53 +00:00
Ingo Weinhold
eceac61bcb Implemented disk device job iteration.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 17:53:11 +00:00
Ingo Weinhold
9e5ec2a534 Implemented BDiskDeviceJob. Should be complete.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4141 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 17:52:39 +00:00
Ingo Weinhold
047c90100d Reordered job types and added missing ones.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4140 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 17:52:03 +00:00
Ingo Weinhold
fc45522e03 Added ContentSize(). Added default parameters for CanMove() and CanResize().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4134 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 00:35:05 +00:00
Ingo Weinhold
8954437d0a Moved definitions of general interest to DiskDeviceDefs.h. Minor changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4133 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 00:33:32 +00:00
Ingo Weinhold
4c7c2ca6ab Added changed flag for partition content size and job related definitions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-30 00:31:37 +00:00
Ingo Weinhold
a8f1d2a859 Added some more partition change flags and a partition state for uninitialized partitions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4069 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-24 22:59:42 +00:00
Ingo Weinhold
426b44c60b Implemented disk device updating. Some changes due to syscall changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-22 00:19:23 +00:00
Ingo Weinhold
e627d686c3 Added definition of flags for partition changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4049 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-22 00:17:47 +00:00
Ingo Weinhold
247a3aae82 Small changes due to modified syscalls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4046 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-22 00:12:54 +00:00
Ingo Weinhold
d61adbe244 CanMove() returns a list of partitions to be unmounted for moving, now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4041 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-21 14:17:33 +00:00
Ingo Weinhold
fb82e723f2 Implemented BPartitionableSpace.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4033 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-20 17:21:06 +00:00
Ingo Weinhold
de8cdceda5 Implemented all Can*() and Validate*() methods. Signature changes to the methods for resizing and moving.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4021 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-19 20:38:50 +00:00
Ingo Weinhold
415002509d * Removed the Validate*() methods. They are less useful than their
BPartition counterparts.
* Removed the BPartition* argument from the Supports*() methods. They
  now return only general capability information. The BPartition::Can*()
  methods would be used to learn whether a certain operation is possible
  with the partition.
* Added some missing Supports*() methods.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-18 18:45:29 +00:00
Ingo Weinhold
18b90323d9 Added flags for disk systems.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4009 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-18 18:41:21 +00:00
Ingo Weinhold
e1570b66f8 Added mostly empty implementations for the missing methods; implemented some of them. Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-17 00:06:58 +00:00
Ingo Weinhold
38844d14f8 Added ValidateInitialize() and a _SetTo(disk_system_id). Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-17 00:05:31 +00:00
Ingo Weinhold
a058daad3a Implemented the remaining methods, some aesthetical changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3998 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-16 21:02:14 +00:00
Ingo Weinhold
910d993921 Implemented the BDiskSystem::Supports*() methods. Added required private helper methods to BPartition.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3989 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-15 21:44:23 +00:00
Ingo Weinhold
dd3be08988 * Removed VisitEach{Initializable,Partitionable}Partition() -- they are
too specific for a general API.
* Implemented {Register,Unregister}FileDevice().
* Implemented Get{Device,Partition}WithID() and
  Get{Device,Partition}ForPath().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3979 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-15 01:20:34 +00:00
Ingo Weinhold
442e574d88 Added FindDescendant() and _IsShadow().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3978 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-15 01:16:29 +00:00
Ingo Weinhold
92b9e33326 * Added SetTo(partition_id), InitCheck().
* Added more parameters to _SetTo().
* Fixed problem in Unset() -- the BPartition version wasn't called.
* Implemented {Prepare,Cancel}Modifications() and IsModified(). The
  latter doesn't work yet, since the syscall implementation is still
  empty yet.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-15 01:15:17 +00:00
Ingo Weinhold
e6fb8288f7 Added missing methods in the header and a partial implementation in the source file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3908 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-08 23:32:52 +00:00
Ingo Weinhold
bf5ffb0203 Added missing manipulation methods (though no implementation). Some cleanup. Renamed UniqueID() to ID().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3906 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-08 23:30:30 +00:00
Ingo Weinhold
8bb7454636 Implemented disk system iteration.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3905 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-08 23:29:21 +00:00
Ingo Weinhold
0cb59d9c8c Added IsReadOnlyMedia(), IsWriteOnceMedia(), and renamed IsRemovable() to IsRemovableMedia() for consistency.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-08 23:28:32 +00:00
Ingo Weinhold
671a745561 Modified the visitor implementation a bit. The Visit() with the BPartition* argument now also gets the level of the partition in the hierarchy.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-08 18:26:15 +00:00
Ingo Weinhold
c54d68a84e Should have waited a few more minutes... Renamed the methods {B,K}Partition::Is{Mountable,Partitionable}() to Contains{File,Partitioning}System(). Similar change for the respective flags (B_PARTITION_{MOUNTABLE,PARTITIONABLE}).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-08 17:38:45 +00:00
Ingo Weinhold
55bf93d80d Fixed handling of partition and device flags and statuses.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-08 17:25:32 +00:00
Ingo Weinhold
5c7270efd7 Beginning of Disk Device API:
* Made all headers parsable. Also some smaller changes.
* Added empty source files for new classes.
* Changed obsolete implementations of existing classes, so that we
  now have basic functionality for BDiskDevice[Roster] and BPartition.
  Iterating through disk devices works and the data we get doesn't look
  too bad for the beginning.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3883 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-06 23:11:10 +00:00
Ingo Weinhold
6bd5253e85 This is the header for global definitions shared by the Disk Device API and the disk device manager.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-06 22:51:42 +00:00
Ingo Weinhold
031858645f Some changes regarding partition creation and initialization.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3615 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:29:29 +00:00
Ingo Weinhold
242a2cbef2 Define the values in the source file rather than in the header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3599 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 22:55:21 +00:00
Ingo Weinhold
d2f2920f84 ShortName() + Name() -> Name() + PrettyName(). More conformant to the rest of the Be API (media, networking).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3468 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:45:49 +00:00
Ingo Weinhold
30b4d57df4 Added TODO.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3467 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:43:52 +00:00
Ingo Weinhold
bef8916ea6 * Used partition_id, disk_job_id and disk_system_id instead of uint32.
* Replaced uint32 for indices and counts with int32.
* Some additions to BDiskDeviceRoster and BDiskDeviceJob.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3453 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-09 23:02:16 +00:00
Tyler Dauwalder
5b3f1d0cda DiskDevice API v2.4
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3378 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 21:51:24 +00:00
Tyler Dauwalder
e62a550aa1 Removed as of DiskDevice API v2.4
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3377 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 21:49:24 +00:00
Tyler Dauwalder
9f4ec30369 DiskDevice API v2.3.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3376 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 21:47:29 +00:00
Tyler Dauwalder
17dc6e0c84 DiskDevice API v2.2.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3375 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 21:46:11 +00:00
Tyler Dauwalder
40f3824020 DiskDevice API v2.0
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3374 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 21:43:58 +00:00
Tyler Dauwalder
800e59617f Removed as of v2.0 of the DiskDevice API.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3373 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 21:41:28 +00:00
Ingo Weinhold
19d8037692 Removed GetPartitioningSystemList(). I though this had already been done. Weird.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2818 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-24 00:36:21 +00:00
Ingo Weinhold
c3815c8e89 Started with the implementation of partitioning support.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2801 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-22 23:52:15 +00:00
Ingo Weinhold
1a10cbe033 Removed the method for getting a FS add-on list. Changed the dialogCenter parameter for the partition methods from BPoint to BRect.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2800 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-22 23:51:33 +00:00
Ingo Weinhold
6ba9af5a46 Added public and private methods for dealing with partition and FS add-ons.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2799 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-22 23:50:14 +00:00
Ingo Weinhold
d749688652 * Moved to the private headers.
* The CreateEditor() methods now get a BSession* respectively BPartition*
  instead of the low-level structures.
* Added EditingDone() hook to the editor class.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2796 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-22 23:45:47 +00:00
Ingo Weinhold
7685055798 Added BDiskDeviceList as friend.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2764 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-20 00:22:09 +00:00
Ingo Weinhold
4a841e49e7 Added class BDiskDeviceList.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2763 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-20 00:20:36 +00:00
Ingo Weinhold
e2077e8d4c Minor changes. Moved the functionality for getting a messenger targeting the DiskDeviceManager in the registrar into the private support files.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2722 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-16 18:03:59 +00:00
Ingo Weinhold
e6e04bdc25 Moved definitions for notification message "cause" fields to this header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2709 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-14 23:12:47 +00:00
Ingo Weinhold
2af6058585 Added two open() versions to our kernel_interface, that re-try opening read-only, if desired. They are now used in BDirectory and BNode, which formerly failed on read-only devices.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2677 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-10 00:19:53 +00:00
Ingo Weinhold
03fa4a4f9c Implemented high-level iteration code. Various fixes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2666 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-08 23:34:47 +00:00
Ingo Weinhold
f0bc031212 Added DiskDevicePrivate.{h,cpp}, which contains the internally used iteration support classes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2665 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-08 23:32:51 +00:00
Ingo Weinhold
bdc2eaf5d8 Started implementing the API. Necessary changes to the headers.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2657 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-08 00:39:38 +00:00
Ingo Weinhold
d8c074b218 Small changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2615 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-01 18:12:03 +00:00
Ingo Weinhold
42b7adc3a4 Added file header. Minor changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-31 22:05:09 +00:00
Ingo Weinhold
d713d1d973 The beginning of the DiskDevice API.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2609 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-31 21:17:20 +00:00
Ingo Weinhold
5d9772d27f Added set_volume_name().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-12-09 12:46:40 +00:00
Tyler Dauwalder
e28d9c0efe Changed B_PATH_NAME_LENGTH+1 suggestions to B_PATH_NAME_LENGTH
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1875 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-08 00:40:25 +00:00
Tyler Dauwalder
89ec8a81c2 Moved CharStream class out of Parser.{h,cpp} and into its own file
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1874 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-08 00:38:35 +00:00
Tyler Dauwalder
e5f9569dcb Added escape_path() functions
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1873 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-08 00:37:46 +00:00
beveloper
9fc7164698 allow building everything without local(tree external) header files beeing
used for kernel or kit components


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1630 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 20:13:17 +00:00
Ingo Weinhold
0cf8481dc7 Added newline at end of file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1410 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-06 22:45:06 +00:00
Tyler Dauwalder
989772566f Added kMetaMimeType constant
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-01 07:29:32 +00:00
Tyler Dauwalder
09dad369d7 Updated filesystem traversal code to skip files/devices that don't
support attributes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1325 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-01 07:26:11 +00:00
Tyler Dauwalder
28f43bbd48 + Updated entry_ref_is_root_dir() to Be style calling conventions
+ Added device_is_root_device() call


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-01 07:23:59 +00:00
Tyler Dauwalder
b690150ecf Removed mime update code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-29 07:12:42 +00:00
Tyler Dauwalder
162f340b21 UpdateMimeInfoThread class, which is a subclass of MimeUpdateThread
that implements updating specific to update_mime_info().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-29 07:09:50 +00:00
Tyler Dauwalder
56a452bb2c CreateAppMetaMimeThread class, which is a subclass of MimeUpdateThread
that implements updating specific to create_app_meta_mime().

Note that the implementation is not 100% correct yet, and the
OBOS::BMimeType::create_app_meta_mime() tests still fail.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-29 07:08:21 +00:00
Tyler Dauwalder
4707046cec MimeUpdateThread class, which is a RegistrarThread subclass that
implements the functionality common to both mime update calls
(update_mime_info() and create_app_meta_mime()), namely walking
through the filesystem and performing updates.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-29 07:05:39 +00:00
Tyler Dauwalder
1bd963b6c2 + Added file-extension based mime type guessing
+ Added sniffer rule based mime type guessing
+ Added get_device_icon()
+ Added complete (synchronous, asynchronous; recursive,
  non-recursive; forcing, non-forcing; you name it we got it :-)
  update_mime_info() implementation.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1152 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-24 05:36:03 +00:00
Tyler Dauwalder
2150894b73 Added BytesNeeded() functions to all the sniffer classes to allow
a pre-read data stream to be sniffed instead of actual files on disk.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1149 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-24 05:27:46 +00:00
Tyler Dauwalder
4494844f12 Initial checkin. BPrivate::Storage::Mime::SnifferRules class, which is
responsible for managing sniffer rules and sniffing files and data
streams.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1147 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-24 05:22:40 +00:00
Tyler Dauwalder
09b4d458da Initial checkin. BPrivate::Storage::Mime::AssociatedTypes class, which
is responsible for managing associations between mime types and
file extensions.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1146 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-24 05:20:30 +00:00
Tyler Dauwalder
e3a2f2069e + Added SetSupportedTypes() test
+ Modified BMimeType::SetSupportedTypes functionality so it keeps track of
stranded types (i.e. previously supported types that have not had the now
unsupporting app signature removed from their supporting apps list yet due
to a false fullSync parameter) over consecutive SetSupportedTypes(...,
false) calls and updates all appropriate stranded types on the next
SetSupportedTypes(..., true) call.
+ Added fullSync parameter to BMimeType::DeleteSupportedTypes
+ Made BMimeType::Delete() do a DeleteSupportedTypes(..., true) call to
properly update the supporting apps lists when a mime type is deleted.
+ Added initial BMimeType::Get/SetSnifferRule
+ Updated BMimeType::CheckSnifferRule() to return B_BAD_VALUE when passed
a NULL rule string.
+ Brought CheckSnifferRule() tests up to date
+ Added lots of Mime::Database doxygen
+ Added any missing mime monitor notifications in Mime::Database
+ Possibly made some other changes as well... :-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1004 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-09 08:12:03 +00:00
Tyler Dauwalder
b86972c240 Added GetSupportingApps() message field constants
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@924 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-28 23:58:08 +00:00
Tyler Dauwalder
41b9ba9155 Added GetSupportingApps()/SetSupportedTypes() functionality
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@923 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-28 23:57:30 +00:00
Tyler Dauwalder
ee0cf10184 Handles supporting application management. This is an
initial, theoretically fully functional implementation.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-28 23:52:52 +00:00
Tyler Dauwalder
02fd0582dd Cleaned up warnings
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-27 08:26:33 +00:00
Tyler Dauwalder
32f45afc26 + Added GetInstalled[Super]Types functionality
+ Cleaned up warnings
+ Added documentation


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-27 08:26:11 +00:00
Tyler Dauwalder
537842b6ee Split into storage/mime/* files, and thus removed
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@863 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-24 05:05:01 +00:00
Tyler Dauwalder
e20a514ae9 After implementing the BMimeType::GetInstalled[Super]Types()
functionality, it became apparent that some restructuring was
needed if I wanted to keep things clean and managble.
storage/MimeDatabase.{h,cpp} have been broken into:

storage/mime/database_support.{h,cpp}
+ MIME database constants
+ high-level database access functions like open_type(),
  read_mime_attr(), etc.

storage/mime/database_access.{h,cpp}
+ atomic read functions
+ is_installed()
+ get_icon_data()

storage/mime/Database.{h,cpp}
+ Mime::Database class, which is responsible for all write,
  non-atomic read, and mime monitor functionality.

storage/mime/InstalledTypes.{h,cpp}
+ Helper class for Mime::Database::GetInstalled[Super]Types()

storage/mime/Supertype.{h,cpp}
+ Helper class for Mime::InstalledTypes

I haven't merged my intial, somewhat cludgy GetInstalled[Super]Types
implementation into the new setup yet. That comes next, and it ought
to be a more graceful implementation now.

I also implemented BMimeType::Get/SetSupportingTypes(), though
they haven't been tested yet (sorry).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@862 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-24 05:04:02 +00:00
Tyler Dauwalder
1c4b41005c Added to_lower() functions
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@861 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-24 04:54:52 +00:00
Tyler Dauwalder
3155eae222 + Added code/updated tests for
- AttrInfo
  - FileExtensions
+ Updated Delete() code to send monitor updates
+ Tenatively added "be:action" field to monitor messages
+ Added data type constants


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@847 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-21 10:55:20 +00:00
Tyler Dauwalder
1ed04c7ce3 Added code for:
+ {Get,Set}IconForType()
+ Delete*() functions


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@834 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-20 09:37:04 +00:00
Tyler Dauwalder
55f345fd20 + Added code for:
- {Get,Set}PreferredApp()
  - {Get,Set}AppHint()
  - {Get,Set}Icon()
+ Added any missing doxygen

SetIcon() is currently not implemented as I would like,
due to us needing an OBOS::BBitmap implementation.
Thus there are two versions and the GetIconData()
function until that day comes around.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@818 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-19 08:37:50 +00:00