softwarecontainer
0.18.0-739e8d7 2017-05-04
Main Page
Namespaces
Data Structures
Files
File List
containeroptionparser.h
1
/*
2
* Copyright (C) 2016-2017 Pelagicore AB
3
*
4
* Permission to use, copy, modify, and/or distribute this software for
5
* any purpose with or without fee is hereby granted, provided that the
6
* above copyright notice and this permission notice appear in all copies.
7
*
8
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
9
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
10
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
11
* BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
12
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
13
* WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
14
* ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
15
* SOFTWARE.
16
*
17
* For further information see LICENSE
18
*/
19
20
#pragma once
21
22
#include "jansson.h"
23
#include <memory>
24
25
#include "softwarecontainer-common.h"
26
#include "softwarecontainererror.h"
27
28
#include "containeroptions/dynamiccontaineroptions.h"
29
30
namespace
softwarecontainer
{
31
32
class
ContainerOptionParseError
:
public
SoftwareContainerError
33
{
34
public
:
35
ContainerOptionParseError
() :
36
SoftwareContainerError
(
"Container config parse error"
)
37
{
38
}
39
40
ContainerOptionParseError
(
const
std::string &message) :
41
SoftwareContainerError
(message)
42
{
43
}
44
};
45
46
/*
47
* @brief a parser for dynamic container configurations.
48
*/
49
class
ContainerOptionParser
50
{
51
LOG_DECLARE_CLASS_CONTEXT(
"CCPA"
,
"ContainerOptionParser"
);
52
53
public
:
54
ContainerOptionParser
();
55
66
std::unique_ptr<DynamicContainerOptions> parse(
const
std::string &config);
67
68
private
:
79
void
readConfigElement(
const
json_t *element);
80
81
std::unique_ptr<DynamicContainerOptions> m_options;
82
83
static
constexpr
int
DEFAULT_TEMPORARY_FILESYSTEM_SIZE = 100 * 1024 * 1024;
84
};
85
86
}
// namespace softwarecontainer
softwarecontainer::ContainerOptionParseError
Definition:
containeroptionparser.h:32
softwarecontainer
Developers guide to adding a config item:
Definition:
baseconfigstore.cpp:22
softwarecontainer::SoftwareContainerError
Definition:
softwarecontainererror.h:27
softwarecontainer::ContainerOptionParser
Definition:
containeroptionparser.h:49
agent
src
containeroptions
containeroptionparser.h
Generated on Thu May 4 2017 14:55:41 for softwarecontainer by
1.8.11