Class MediaDatabase
Definition
- Namespace:
- Tizen.Content.MediaContent
- Assembly:
- Tizen.Content.MediaContent.dll
Provides the ability to connect to and manage the database.
C#Copypublic class MediaDatabase : IDisposable
- Inheritance
-
objectMediaDatabase
- Implements
-
System.IDisposable
Constructors
Declaration
C#Copypublic MediaDatabase()
Properties
Declaration
C#Copypublic bool IsDisposed { get; }
Property Value
| Type | Description |
|---|---|
| bool | true if the database has been disposed; otherwise, false. |
Methods
Declaration
C#Copypublic void Connect()
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | The database is already connected. |
| System.ObjectDisposedException | The MediaDatabase has already been disposed. |
| MediaDatabaseException | An error occurred while connecting. |
Declaration
C#Copypublic void Disconnect()
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | The database is not connected. |
| System.ObjectDisposedException | The MediaDatabase has already been disposed. |
| MediaDatabaseException | An error occurred while connecting. |
Declaration
C#Copypublic void Dispose()
Declaration
C#Copyprotected virtual void Dispose(bool disposing)
Parameters
| Type | Name | Description |
|---|---|---|
| bool | disposing | true to release both managed and unmanaged resources; false to release only unmanaged resources. |
Declaration
C#Copypublic void ScanFile(string path)
Parameters
| Type | Name | Description |
|---|---|---|
| string | path | The path of the media to be scanned. |
Remarks
It requests to scan a media file to the media server.
If the specified file is not registered to the database yet,
the media file information will be added to the database.
If it is already registered to the database, the media information is refreshed.
If the specified file does not exist,
the record of the media file will be deleted from the database.
If you want to access internal storage, you should add privilege http://tizen.org/privilege/mediastorage.
If you want to access external storage, you should add privilege http://tizen.org/privilege/externalstorage.
If http://tizen.org/feature/content.scanning.others feature is not supported and the specified file is other-type,
System.NotSupportedException will be thrown.
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | The database is not connected. |
| System.ObjectDisposedException | The MediaDatabase has already been disposed. |
| System.ArgumentNullException |
|
| System.ArgumentException |
|
| System.UnauthorizedAccessException | The caller has no required privilege. |
| System.NotSupportedException | The required feature is not supported. |
Declaration
C#Copypublic Task ScanFolderAsync(string folderPath, bool recursive, CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| string | folderPath | The path to scan. |
| bool | recursive | The value indicating if the folder is to be recursively scanned. |
| System.Threading.CancellationToken | cancellationToken | The token to stop scanning. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous scan operation. |
Remarks
If you want to access internal storage, you should add privilege http://tizen.org/privilege/mediastorage.
If you want to access external storage, you should add privilege http://tizen.org/privilege/externalstorage.
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | The database is not connected. |
| System.ObjectDisposedException | The MediaDatabase has already been disposed. |
| System.UnauthorizedAccessException | The caller has no required privilege. |
| System.ArgumentNullException |
|
| System.ArgumentException |
|
Declaration
C#Copypublic Task ScanFolderAsync(string folderPath, bool recursive)
Parameters
| Type | Name | Description |
|---|---|---|
| string | folderPath | The path to scan. |
| bool | recursive | The value indicating if the folder is to be recursively scanned. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous scan operation. |
Remarks
If you want to access internal storage, you should add privilege http://tizen.org/privilege/mediastorage.
If you want to access external storage, you should add privilege http://tizen.org/privilege/externalstorage.
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | The database is not connected. |
| System.ObjectDisposedException | The MediaDatabase has already been disposed. |
| System.UnauthorizedAccessException | The caller has no required privilege. |
| System.ArgumentNullException |
|
| System.ArgumentException |
|
Declaration
C#Copypublic Task ScanFolderAsync(string folderPath, CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| string | folderPath | The path to scan. |
| System.Threading.CancellationToken | cancellationToken | The token to stop scanning. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous scan operation. |
Remarks
If you want to access internal storage, you should add privilege http://tizen.org/privilege/mediastorage.
If you want to access external storage, you should add privilege http://tizen.org/privilege/externalstorage.
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | The database is not connected. |
| System.ObjectDisposedException | The MediaDatabase has already been disposed. |
| System.UnauthorizedAccessException | The caller has no required privilege. |
| System.ArgumentNullException |
|
| System.ArgumentException |
|
Declaration
C#Copypublic Task ScanFolderAsync(string folderPath)
Parameters
| Type | Name | Description |
|---|---|---|
| string | folderPath | The path to scan. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous scan operation. |
Remarks
If you want to access internal storage, you should add privilege http://tizen.org/privilege/mediastorage.
If you want to access external storage, you should add privilege http://tizen.org/privilege/externalstorage.
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | The database is not connected. |
| System.ObjectDisposedException | The MediaDatabase has already been disposed. |
| System.UnauthorizedAccessException | The caller has no required privilege. |
| System.ArgumentNullException |
|
| System.ArgumentException |
|
Events
Declaration
C#Copypublic static event EventHandler<FolderUpdatedEventArgs> FolderUpdated
Event Type
| Type | Description |
|---|---|
| System.EventHandler<TEventArgs><FolderUpdatedEventArgs> |
Declaration
C#Copypublic static event EventHandler<MediaInfoUpdatedEventArgs> MediaInfoUpdated
Event Type
| Type | Description |
|---|---|
| System.EventHandler<TEventArgs><MediaInfoUpdatedEventArgs> |