summaryrefslogtreecommitdiff
path: root/hscript/disk.hh
diff options
context:
space:
mode:
authorA. Wilcox <AWilcox@Wilcox-Tech.com>2019-10-17 23:08:43 -0500
committerA. Wilcox <AWilcox@Wilcox-Tech.com>2019-10-17 23:08:43 -0500
commit383ed329bffdec853bdb4c9c03e56ed3b86455da (patch)
treeeda7ef3f25eb1ecae6b0c8824c87252a5d2d0379 /hscript/disk.hh
parent01105c999b6ff14f8ba9dae9031c3adfc8391193 (diff)
downloadhorizon-383ed329bffdec853bdb4c9c03e56ed3b86455da.tar.gz
horizon-383ed329bffdec853bdb4c9c03e56ed3b86455da.tar.bz2
horizon-383ed329bffdec853bdb4c9c03e56ed3b86455da.tar.xz
horizon-383ed329bffdec853bdb4c9c03e56ed3b86455da.zip
hscript: Implement diskid key (except execution)
Diffstat (limited to 'hscript/disk.hh')
-rw-r--r--hscript/disk.hh18
1 files changed, 16 insertions, 2 deletions
diff --git a/hscript/disk.hh b/hscript/disk.hh
index d849e2f..02ecb98 100644
--- a/hscript/disk.hh
+++ b/hscript/disk.hh
@@ -19,6 +19,21 @@ namespace Horizon {
namespace Keys {
class DiskId : public Key {
+private:
+ const std::string _block;
+ const std::string _ident;
+
+ DiskId(int _line, const std::string &my_block, const std::string &my_i) :
+ Key(_line), _block(my_block), _ident(my_i) {}
+public:
+ /*! Retrieve the block device that this key identifies. */
+ const std::string device() const { return this->_block; }
+ /*! Retrieve the identification for the block device. */
+ const std::string ident() const { return this->_ident; }
+
+ static Key *parseFromData(const std::string &, int, int*, int*);
+ bool validate(ScriptOptions) const override;
+ bool execute(ScriptOptions) const override;
};
class DiskLabel : public Key {
@@ -60,8 +75,7 @@ public:
/*! Retrieve the mount options for this mount, if any. */
const std::string options() const { return this->_opts; }
- static Key *parseFromData(const std::string &data, int lineno, int *errors,
- int *warnings);
+ static Key *parseFromData(const std::string &, int, int*, int*);
bool validate(ScriptOptions) const override;
bool execute(ScriptOptions) const override;
};