Home | History | Annotate | Download | only in common
      1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 // Multiply-included message file, no include guard.
      6 
      7 #include "ipc/ipc_message_macros.h"
      8 #include "ipc/ipc_param_traits.h"
      9 #include "ipc/ipc_platform_file.h"
     10 
     11 #define IPC_MESSAGE_START DatabaseMsgStart
     12 
     13 // Database messages sent from the browser to the renderer.
     14 
     15 // Notifies the child process of the new database size
     16 IPC_MESSAGE_CONTROL3(DatabaseMsg_UpdateSize,
     17                      std::string /* the origin */,
     18                      base::string16 /* the database name */,
     19                      int64 /* the new database size */)
     20 
     21 // Notifies the child process of the new space available
     22 IPC_MESSAGE_CONTROL2(DatabaseMsg_UpdateSpaceAvailable,
     23                      std::string /* the origin */,
     24                      int64 /* space available to origin */)
     25 
     26 // Notifies the child process to reset it's cached value for the origin.
     27 IPC_MESSAGE_CONTROL1(DatabaseMsg_ResetSpaceAvailable,
     28                      std::string /* the origin */)
     29 
     30 // Asks the child process to close a database immediately
     31 IPC_MESSAGE_CONTROL2(DatabaseMsg_CloseImmediately,
     32                      std::string /* the origin */,
     33                      base::string16 /* the database name */)
     34 
     35 // Database messages sent from the renderer to the browser.
     36 
     37 // Asks the browser process to open a DB file with the given name.
     38 IPC_SYNC_MESSAGE_CONTROL2_1(DatabaseHostMsg_OpenFile,
     39                             base::string16 /* vfs file name */,
     40                             int /* desired flags */,
     41                             IPC::PlatformFileForTransit /* file_handle */)
     42 
     43 // Asks the browser process to delete a DB file
     44 IPC_SYNC_MESSAGE_CONTROL2_1(DatabaseHostMsg_DeleteFile,
     45                             base::string16 /* vfs file name */,
     46                             bool /* whether or not to sync the directory */,
     47                             int /* SQLite error code */)
     48 
     49 // Asks the browser process to return the attributes of a DB file
     50 IPC_SYNC_MESSAGE_CONTROL1_1(DatabaseHostMsg_GetFileAttributes,
     51                             base::string16 /* vfs file name */,
     52                             int32 /* the attributes for the given DB file */)
     53 
     54 // Asks the browser process to return the size of a DB file
     55 IPC_SYNC_MESSAGE_CONTROL1_1(DatabaseHostMsg_GetFileSize,
     56                             base::string16 /* vfs file name */,
     57                             int64 /* the size of the given DB file */)
     58 
     59 // Asks the browser process for the amount of space available to an origin
     60 IPC_SYNC_MESSAGE_CONTROL1_1(DatabaseHostMsg_GetSpaceAvailable,
     61                             std::string /* origin identifier */,
     62                             int64 /* remaining space available */)
     63 
     64 // Notifies the browser process that a new database has been opened
     65 IPC_MESSAGE_CONTROL4(DatabaseHostMsg_Opened,
     66                      std::string /* origin identifier */,
     67                      base::string16 /* database name */,
     68                      base::string16 /* database description */,
     69                      int64 /* estimated size */)
     70 
     71 // Notifies the browser process that a database might have been modified
     72 IPC_MESSAGE_CONTROL2(DatabaseHostMsg_Modified,
     73                      std::string /* origin identifier */,
     74                      base::string16 /* database name */)
     75 
     76 // Notifies the browser process that a database is about to close
     77 IPC_MESSAGE_CONTROL2(DatabaseHostMsg_Closed,
     78                      std::string /* origin identifier */,
     79                      base::string16 /* database name */)
     80 
     81 // Sent when a sqlite error indicates the database is corrupt.
     82 IPC_MESSAGE_CONTROL3(DatabaseHostMsg_HandleSqliteError,
     83                      std::string /* origin identifier */,
     84                      base::string16 /* database name */,
     85                      int  /* error */)
     86