+ $this->exec($cmd,$out,$res);
+ $this->updateProperty($property);
+ }
+
+ /**
+ * Upgrades the Dataset to latest filesystem version
+ *
+ * @return void
+ * @access public
+ */
+ public function upgrade() {
+ $cmd = "zfs upgrade " . $this->name . " 2>&1";
+ $this->exec($cmd,$out,$res);
+ }
+
+ /**
+ * Mount the Dataset
+ *
+ * @return void
+ * @access public
+ */
+ public function mount() {
+ $cmd = "zfs mount " . $this->name . " 2>&1";
+ $this->exec($cmd,$out,$res);
+ $this->updateProperty("mounted");
+ }
+
+ /**
+ * Unmount the Dataset
+ *
+ * @return void
+ * @access public
+ */
+ public function unmount() {
+ $cmd = "zfs unmount " . $this->name . " 2>&1";
+ $this->exec($cmd,$out,$res);
+ $this->updateProperty("mounted");
+ }
+
+
+ /**
+ * Helper function to execute a command and throw an exception on error
+ * (requires stderr redirected to stdout for proper exception message).
+ *
+ * @param string $cmd Command to execute
+ * @param array &$out If provided will contain output in an array
+ * @param int &$res If provided will contain Exit status of the command
+ * @return string Last line of output when executing the command
+ * @throws OMVModuleZFSException
+ * @access private
+ */
+ private function exec($cmd, &$out = null, &$res = null) {
+ $tmp = OMVUtil::exec($cmd, $out, $res);