blob: 0bd51d2aca371c418a5d74472c8a74e5ab4da620 [file] [log] [blame]
San Mehatf1b736b2009-10-10 17:22:08 -07001/*
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
23class CommandListener : public FrameworkListener {
24public:
25 CommandListener();
26 virtual ~CommandListener() {}
27
28private:
San Mehatd9a4e352010-03-12 13:32:47 -080029 static void dumpArgs(int argc, char **argv, int argObscure);
30
31 class DumpCmd : public VoldCommand {
32 public:
33 DumpCmd();
34 virtual ~DumpCmd() {}
35 int runCommand(SocketClient *c, int argc, char ** argv);
36 };
San Mehatf1b736b2009-10-10 17:22:08 -070037
San Mehateba65e92010-01-29 05:15:16 -080038 class VolumeCmd : public VoldCommand {
San Mehatf1b736b2009-10-10 17:22:08 -070039 public:
San Mehateba65e92010-01-29 05:15:16 -080040 VolumeCmd();
41 virtual ~VolumeCmd() {}
San Mehatf1b736b2009-10-10 17:22:08 -070042 int runCommand(SocketClient *c, int argc, char ** argv);
43 };
44
San Mehateba65e92010-01-29 05:15:16 -080045 class AsecCmd : public VoldCommand {
San Mehatf1b736b2009-10-10 17:22:08 -070046 public:
San Mehateba65e92010-01-29 05:15:16 -080047 AsecCmd();
48 virtual ~AsecCmd() {}
San Mehata19b2502010-01-06 10:33:53 -080049 int runCommand(SocketClient *c, int argc, char ** argv);
Kenny Root344ca102012-04-03 17:23:01 -070050 private:
51 void listAsecsInDirectory(SocketClient *c, const char *directory);
San Mehata19b2502010-01-06 10:33:53 -080052 };
53
Kenny Root508c0e12010-07-12 09:59:49 -070054 class ObbCmd : public VoldCommand {
Kenny Rootfb7c4d52010-06-30 18:48:41 -070055 public:
Kenny Root508c0e12010-07-12 09:59:49 -070056 ObbCmd();
57 virtual ~ObbCmd() {}
Kenny Rootfb7c4d52010-06-30 18:48:41 -070058 int runCommand(SocketClient *c, int argc, char ** argv);
59 };
60
San Mehat586536c2010-02-16 17:12:00 -080061 class StorageCmd : public VoldCommand {
62 public:
63 StorageCmd();
64 virtual ~StorageCmd() {}
65 int runCommand(SocketClient *c, int argc, char ** argv);
66 };
San Mehat2350c442010-03-02 13:16:50 -080067
Ken Sumrall8f869aa2010-12-03 03:47:09 -080068 class CryptfsCmd : public VoldCommand {
69 public:
70 CryptfsCmd();
71 virtual ~CryptfsCmd() {}
72 int runCommand(SocketClient *c, int argc, char ** argv);
73 };
Ken Sumrallb87937c2013-03-19 21:46:39 -070074
75 class FstrimCmd : public VoldCommand {
76 public:
77 FstrimCmd();
78 virtual ~FstrimCmd() {}
79 int runCommand(SocketClient *c, int argc, char ** argv);
80 };
San Mehatf1b736b2009-10-10 17:22:08 -070081};
82
83#endif