• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2008 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #ifndef _COMMANDLISTENER_H__
18 #define _COMMANDLISTENER_H__
19 
20 #include <sysutils/FrameworkListener.h>
21 #include "VoldCommand.h"
22 
23 class CommandListener : public FrameworkListener {
24 public:
25     CommandListener();
~CommandListener()26     virtual ~CommandListener() {}
27 
28 private:
29     static void dumpArgs(int argc, char **argv, int argObscure);
30 
31     class DumpCmd : public VoldCommand {
32     public:
33         DumpCmd();
~DumpCmd()34         virtual ~DumpCmd() {}
35         int runCommand(SocketClient *c, int argc, char ** argv);
36     };
37 
38     class VolumeCmd : public VoldCommand {
39     public:
40         VolumeCmd();
~VolumeCmd()41         virtual ~VolumeCmd() {}
42         int runCommand(SocketClient *c, int argc, char ** argv);
43     };
44 
45     class AsecCmd : public VoldCommand {
46     public:
47         AsecCmd();
~AsecCmd()48         virtual ~AsecCmd() {}
49         int runCommand(SocketClient *c, int argc, char ** argv);
50     private:
51         void listAsecsInDirectory(SocketClient *c, const char *directory);
52     };
53 
54     class ObbCmd : public VoldCommand {
55     public:
56         ObbCmd();
~ObbCmd()57         virtual ~ObbCmd() {}
58         int runCommand(SocketClient *c, int argc, char ** argv);
59     };
60 
61     class StorageCmd : public VoldCommand {
62     public:
63         StorageCmd();
~StorageCmd()64         virtual ~StorageCmd() {}
65         int runCommand(SocketClient *c, int argc, char ** argv);
66     };
67 
68     class XwarpCmd : public VoldCommand {
69     public:
70         XwarpCmd();
~XwarpCmd()71         virtual ~XwarpCmd() {}
72         int runCommand(SocketClient *c, int argc, char ** argv);
73     };
74 
75     class CryptfsCmd : public VoldCommand {
76     public:
77         CryptfsCmd();
~CryptfsCmd()78         virtual ~CryptfsCmd() {}
79         int runCommand(SocketClient *c, int argc, char ** argv);
80     };
81 
82     class FstrimCmd : public VoldCommand {
83     public:
84         FstrimCmd();
~FstrimCmd()85         virtual ~FstrimCmd() {}
86         int runCommand(SocketClient *c, int argc, char ** argv);
87     };
88 };
89 
90 #endif
91