AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
HyperParameterTrainingJobDefinition.h
1
6#pragma once
7#include <aws/sagemaker/SageMaker_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/sagemaker/model/HyperParameterTuningJobObjective.h>
10#include <aws/sagemaker/model/ParameterRanges.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/sagemaker/model/HyperParameterAlgorithmSpecification.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/sagemaker/model/VpcConfig.h>
15#include <aws/sagemaker/model/OutputDataConfig.h>
16#include <aws/sagemaker/model/ResourceConfig.h>
17#include <aws/sagemaker/model/HyperParameterTuningResourceConfig.h>
18#include <aws/sagemaker/model/StoppingCondition.h>
19#include <aws/sagemaker/model/CheckpointConfig.h>
20#include <aws/sagemaker/model/RetryStrategy.h>
21#include <aws/sagemaker/model/Channel.h>
22#include <utility>
23
24namespace Aws
25{
26namespace Utils
27{
28namespace Json
29{
30 class JsonValue;
31 class JsonView;
32} // namespace Json
33} // namespace Utils
34namespace SageMaker
35{
36namespace Model
37{
38
46 {
47 public:
51 AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const;
52
53
55
58 inline const Aws::String& GetDefinitionName() const{ return m_definitionName; }
59 inline bool DefinitionNameHasBeenSet() const { return m_definitionNameHasBeenSet; }
60 inline void SetDefinitionName(const Aws::String& value) { m_definitionNameHasBeenSet = true; m_definitionName = value; }
61 inline void SetDefinitionName(Aws::String&& value) { m_definitionNameHasBeenSet = true; m_definitionName = std::move(value); }
62 inline void SetDefinitionName(const char* value) { m_definitionNameHasBeenSet = true; m_definitionName.assign(value); }
64 inline HyperParameterTrainingJobDefinition& WithDefinitionName(Aws::String&& value) { SetDefinitionName(std::move(value)); return *this;}
65 inline HyperParameterTrainingJobDefinition& WithDefinitionName(const char* value) { SetDefinitionName(value); return *this;}
67
69
70 inline const HyperParameterTuningJobObjective& GetTuningObjective() const{ return m_tuningObjective; }
71 inline bool TuningObjectiveHasBeenSet() const { return m_tuningObjectiveHasBeenSet; }
72 inline void SetTuningObjective(const HyperParameterTuningJobObjective& value) { m_tuningObjectiveHasBeenSet = true; m_tuningObjective = value; }
73 inline void SetTuningObjective(HyperParameterTuningJobObjective&& value) { m_tuningObjectiveHasBeenSet = true; m_tuningObjective = std::move(value); }
77
79
80 inline const ParameterRanges& GetHyperParameterRanges() const{ return m_hyperParameterRanges; }
81 inline bool HyperParameterRangesHasBeenSet() const { return m_hyperParameterRangesHasBeenSet; }
82 inline void SetHyperParameterRanges(const ParameterRanges& value) { m_hyperParameterRangesHasBeenSet = true; m_hyperParameterRanges = value; }
83 inline void SetHyperParameterRanges(ParameterRanges&& value) { m_hyperParameterRangesHasBeenSet = true; m_hyperParameterRanges = std::move(value); }
87
89
93 inline const Aws::Map<Aws::String, Aws::String>& GetStaticHyperParameters() const{ return m_staticHyperParameters; }
94 inline bool StaticHyperParametersHasBeenSet() const { return m_staticHyperParametersHasBeenSet; }
95 inline void SetStaticHyperParameters(const Aws::Map<Aws::String, Aws::String>& value) { m_staticHyperParametersHasBeenSet = true; m_staticHyperParameters = value; }
96 inline void SetStaticHyperParameters(Aws::Map<Aws::String, Aws::String>&& value) { m_staticHyperParametersHasBeenSet = true; m_staticHyperParameters = std::move(value); }
99 inline HyperParameterTrainingJobDefinition& AddStaticHyperParameters(const Aws::String& key, const Aws::String& value) { m_staticHyperParametersHasBeenSet = true; m_staticHyperParameters.emplace(key, value); return *this; }
100 inline HyperParameterTrainingJobDefinition& AddStaticHyperParameters(Aws::String&& key, const Aws::String& value) { m_staticHyperParametersHasBeenSet = true; m_staticHyperParameters.emplace(std::move(key), value); return *this; }
101 inline HyperParameterTrainingJobDefinition& AddStaticHyperParameters(const Aws::String& key, Aws::String&& value) { m_staticHyperParametersHasBeenSet = true; m_staticHyperParameters.emplace(key, std::move(value)); return *this; }
102 inline HyperParameterTrainingJobDefinition& AddStaticHyperParameters(Aws::String&& key, Aws::String&& value) { m_staticHyperParametersHasBeenSet = true; m_staticHyperParameters.emplace(std::move(key), std::move(value)); return *this; }
103 inline HyperParameterTrainingJobDefinition& AddStaticHyperParameters(const char* key, Aws::String&& value) { m_staticHyperParametersHasBeenSet = true; m_staticHyperParameters.emplace(key, std::move(value)); return *this; }
104 inline HyperParameterTrainingJobDefinition& AddStaticHyperParameters(Aws::String&& key, const char* value) { m_staticHyperParametersHasBeenSet = true; m_staticHyperParameters.emplace(std::move(key), value); return *this; }
105 inline HyperParameterTrainingJobDefinition& AddStaticHyperParameters(const char* key, const char* value) { m_staticHyperParametersHasBeenSet = true; m_staticHyperParameters.emplace(key, value); return *this; }
107
109
115 inline const HyperParameterAlgorithmSpecification& GetAlgorithmSpecification() const{ return m_algorithmSpecification; }
116 inline bool AlgorithmSpecificationHasBeenSet() const { return m_algorithmSpecificationHasBeenSet; }
117 inline void SetAlgorithmSpecification(const HyperParameterAlgorithmSpecification& value) { m_algorithmSpecificationHasBeenSet = true; m_algorithmSpecification = value; }
118 inline void SetAlgorithmSpecification(HyperParameterAlgorithmSpecification&& value) { m_algorithmSpecificationHasBeenSet = true; m_algorithmSpecification = std::move(value); }
122
124
128 inline const Aws::String& GetRoleArn() const{ return m_roleArn; }
129 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
130 inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; }
131 inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); }
132 inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); }
133 inline HyperParameterTrainingJobDefinition& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;}
134 inline HyperParameterTrainingJobDefinition& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;}
135 inline HyperParameterTrainingJobDefinition& WithRoleArn(const char* value) { SetRoleArn(value); return *this;}
137
139
145 inline const Aws::Vector<Channel>& GetInputDataConfig() const{ return m_inputDataConfig; }
146 inline bool InputDataConfigHasBeenSet() const { return m_inputDataConfigHasBeenSet; }
147 inline void SetInputDataConfig(const Aws::Vector<Channel>& value) { m_inputDataConfigHasBeenSet = true; m_inputDataConfig = value; }
148 inline void SetInputDataConfig(Aws::Vector<Channel>&& value) { m_inputDataConfigHasBeenSet = true; m_inputDataConfig = std::move(value); }
151 inline HyperParameterTrainingJobDefinition& AddInputDataConfig(const Channel& value) { m_inputDataConfigHasBeenSet = true; m_inputDataConfig.push_back(value); return *this; }
152 inline HyperParameterTrainingJobDefinition& AddInputDataConfig(Channel&& value) { m_inputDataConfigHasBeenSet = true; m_inputDataConfig.push_back(std::move(value)); return *this; }
154
156
165 inline const VpcConfig& GetVpcConfig() const{ return m_vpcConfig; }
166 inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; }
167 inline void SetVpcConfig(const VpcConfig& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = value; }
168 inline void SetVpcConfig(VpcConfig&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::move(value); }
169 inline HyperParameterTrainingJobDefinition& WithVpcConfig(const VpcConfig& value) { SetVpcConfig(value); return *this;}
170 inline HyperParameterTrainingJobDefinition& WithVpcConfig(VpcConfig&& value) { SetVpcConfig(std::move(value)); return *this;}
172
174
178 inline const OutputDataConfig& GetOutputDataConfig() const{ return m_outputDataConfig; }
179 inline bool OutputDataConfigHasBeenSet() const { return m_outputDataConfigHasBeenSet; }
180 inline void SetOutputDataConfig(const OutputDataConfig& value) { m_outputDataConfigHasBeenSet = true; m_outputDataConfig = value; }
181 inline void SetOutputDataConfig(OutputDataConfig&& value) { m_outputDataConfigHasBeenSet = true; m_outputDataConfig = std::move(value); }
185
187
198 inline const ResourceConfig& GetResourceConfig() const{ return m_resourceConfig; }
199 inline bool ResourceConfigHasBeenSet() const { return m_resourceConfigHasBeenSet; }
200 inline void SetResourceConfig(const ResourceConfig& value) { m_resourceConfigHasBeenSet = true; m_resourceConfig = value; }
201 inline void SetResourceConfig(ResourceConfig&& value) { m_resourceConfigHasBeenSet = true; m_resourceConfig = std::move(value); }
205
207
215 inline const HyperParameterTuningResourceConfig& GetHyperParameterTuningResourceConfig() const{ return m_hyperParameterTuningResourceConfig; }
216 inline bool HyperParameterTuningResourceConfigHasBeenSet() const { return m_hyperParameterTuningResourceConfigHasBeenSet; }
217 inline void SetHyperParameterTuningResourceConfig(const HyperParameterTuningResourceConfig& value) { m_hyperParameterTuningResourceConfigHasBeenSet = true; m_hyperParameterTuningResourceConfig = value; }
218 inline void SetHyperParameterTuningResourceConfig(HyperParameterTuningResourceConfig&& value) { m_hyperParameterTuningResourceConfigHasBeenSet = true; m_hyperParameterTuningResourceConfig = std::move(value); }
222
224
230 inline const StoppingCondition& GetStoppingCondition() const{ return m_stoppingCondition; }
231 inline bool StoppingConditionHasBeenSet() const { return m_stoppingConditionHasBeenSet; }
232 inline void SetStoppingCondition(const StoppingCondition& value) { m_stoppingConditionHasBeenSet = true; m_stoppingCondition = value; }
233 inline void SetStoppingCondition(StoppingCondition&& value) { m_stoppingConditionHasBeenSet = true; m_stoppingCondition = std::move(value); }
237
239
247 inline bool GetEnableNetworkIsolation() const{ return m_enableNetworkIsolation; }
248 inline bool EnableNetworkIsolationHasBeenSet() const { return m_enableNetworkIsolationHasBeenSet; }
249 inline void SetEnableNetworkIsolation(bool value) { m_enableNetworkIsolationHasBeenSet = true; m_enableNetworkIsolation = value; }
252
254
261 inline bool GetEnableInterContainerTrafficEncryption() const{ return m_enableInterContainerTrafficEncryption; }
262 inline bool EnableInterContainerTrafficEncryptionHasBeenSet() const { return m_enableInterContainerTrafficEncryptionHasBeenSet; }
263 inline void SetEnableInterContainerTrafficEncryption(bool value) { m_enableInterContainerTrafficEncryptionHasBeenSet = true; m_enableInterContainerTrafficEncryption = value; }
266
268
272 inline bool GetEnableManagedSpotTraining() const{ return m_enableManagedSpotTraining; }
273 inline bool EnableManagedSpotTrainingHasBeenSet() const { return m_enableManagedSpotTrainingHasBeenSet; }
274 inline void SetEnableManagedSpotTraining(bool value) { m_enableManagedSpotTrainingHasBeenSet = true; m_enableManagedSpotTraining = value; }
277
279
280 inline const CheckpointConfig& GetCheckpointConfig() const{ return m_checkpointConfig; }
281 inline bool CheckpointConfigHasBeenSet() const { return m_checkpointConfigHasBeenSet; }
282 inline void SetCheckpointConfig(const CheckpointConfig& value) { m_checkpointConfigHasBeenSet = true; m_checkpointConfig = value; }
283 inline void SetCheckpointConfig(CheckpointConfig&& value) { m_checkpointConfigHasBeenSet = true; m_checkpointConfig = std::move(value); }
287
289
293 inline const RetryStrategy& GetRetryStrategy() const{ return m_retryStrategy; }
294 inline bool RetryStrategyHasBeenSet() const { return m_retryStrategyHasBeenSet; }
295 inline void SetRetryStrategy(const RetryStrategy& value) { m_retryStrategyHasBeenSet = true; m_retryStrategy = value; }
296 inline void SetRetryStrategy(RetryStrategy&& value) { m_retryStrategyHasBeenSet = true; m_retryStrategy = std::move(value); }
298 inline HyperParameterTrainingJobDefinition& WithRetryStrategy(RetryStrategy&& value) { SetRetryStrategy(std::move(value)); return *this;}
300
302
316 inline const Aws::Map<Aws::String, Aws::String>& GetEnvironment() const{ return m_environment; }
317 inline bool EnvironmentHasBeenSet() const { return m_environmentHasBeenSet; }
318 inline void SetEnvironment(const Aws::Map<Aws::String, Aws::String>& value) { m_environmentHasBeenSet = true; m_environment = value; }
319 inline void SetEnvironment(Aws::Map<Aws::String, Aws::String>&& value) { m_environmentHasBeenSet = true; m_environment = std::move(value); }
322 inline HyperParameterTrainingJobDefinition& AddEnvironment(const Aws::String& key, const Aws::String& value) { m_environmentHasBeenSet = true; m_environment.emplace(key, value); return *this; }
323 inline HyperParameterTrainingJobDefinition& AddEnvironment(Aws::String&& key, const Aws::String& value) { m_environmentHasBeenSet = true; m_environment.emplace(std::move(key), value); return *this; }
324 inline HyperParameterTrainingJobDefinition& AddEnvironment(const Aws::String& key, Aws::String&& value) { m_environmentHasBeenSet = true; m_environment.emplace(key, std::move(value)); return *this; }
325 inline HyperParameterTrainingJobDefinition& AddEnvironment(Aws::String&& key, Aws::String&& value) { m_environmentHasBeenSet = true; m_environment.emplace(std::move(key), std::move(value)); return *this; }
326 inline HyperParameterTrainingJobDefinition& AddEnvironment(const char* key, Aws::String&& value) { m_environmentHasBeenSet = true; m_environment.emplace(key, std::move(value)); return *this; }
327 inline HyperParameterTrainingJobDefinition& AddEnvironment(Aws::String&& key, const char* value) { m_environmentHasBeenSet = true; m_environment.emplace(std::move(key), value); return *this; }
328 inline HyperParameterTrainingJobDefinition& AddEnvironment(const char* key, const char* value) { m_environmentHasBeenSet = true; m_environment.emplace(key, value); return *this; }
330 private:
331
332 Aws::String m_definitionName;
333 bool m_definitionNameHasBeenSet = false;
334
335 HyperParameterTuningJobObjective m_tuningObjective;
336 bool m_tuningObjectiveHasBeenSet = false;
337
338 ParameterRanges m_hyperParameterRanges;
339 bool m_hyperParameterRangesHasBeenSet = false;
340
341 Aws::Map<Aws::String, Aws::String> m_staticHyperParameters;
342 bool m_staticHyperParametersHasBeenSet = false;
343
344 HyperParameterAlgorithmSpecification m_algorithmSpecification;
345 bool m_algorithmSpecificationHasBeenSet = false;
346
347 Aws::String m_roleArn;
348 bool m_roleArnHasBeenSet = false;
349
350 Aws::Vector<Channel> m_inputDataConfig;
351 bool m_inputDataConfigHasBeenSet = false;
352
353 VpcConfig m_vpcConfig;
354 bool m_vpcConfigHasBeenSet = false;
355
356 OutputDataConfig m_outputDataConfig;
357 bool m_outputDataConfigHasBeenSet = false;
358
359 ResourceConfig m_resourceConfig;
360 bool m_resourceConfigHasBeenSet = false;
361
362 HyperParameterTuningResourceConfig m_hyperParameterTuningResourceConfig;
363 bool m_hyperParameterTuningResourceConfigHasBeenSet = false;
364
365 StoppingCondition m_stoppingCondition;
366 bool m_stoppingConditionHasBeenSet = false;
367
368 bool m_enableNetworkIsolation;
369 bool m_enableNetworkIsolationHasBeenSet = false;
370
371 bool m_enableInterContainerTrafficEncryption;
372 bool m_enableInterContainerTrafficEncryptionHasBeenSet = false;
373
374 bool m_enableManagedSpotTraining;
375 bool m_enableManagedSpotTrainingHasBeenSet = false;
376
377 CheckpointConfig m_checkpointConfig;
378 bool m_checkpointConfigHasBeenSet = false;
379
380 RetryStrategy m_retryStrategy;
381 bool m_retryStrategyHasBeenSet = false;
382
384 bool m_environmentHasBeenSet = false;
385 };
386
387} // namespace Model
388} // namespace SageMaker
389} // namespace Aws
HyperParameterTrainingJobDefinition & WithCheckpointConfig(const CheckpointConfig &value)
HyperParameterTrainingJobDefinition & AddEnvironment(Aws::String &&key, const Aws::String &value)
HyperParameterTrainingJobDefinition & WithStoppingCondition(StoppingCondition &&value)
HyperParameterTrainingJobDefinition & AddStaticHyperParameters(Aws::String &&key, const Aws::String &value)
HyperParameterTrainingJobDefinition & WithTuningObjective(HyperParameterTuningJobObjective &&value)
void SetAlgorithmSpecification(const HyperParameterAlgorithmSpecification &value)
HyperParameterTrainingJobDefinition & WithInputDataConfig(const Aws::Vector< Channel > &value)
const Aws::Map< Aws::String, Aws::String > & GetEnvironment() const
HyperParameterTrainingJobDefinition & AddStaticHyperParameters(const Aws::String &key, Aws::String &&value)
AWS_SAGEMAKER_API HyperParameterTrainingJobDefinition & operator=(Aws::Utils::Json::JsonView jsonValue)
HyperParameterTrainingJobDefinition & AddEnvironment(Aws::String &&key, Aws::String &&value)
void SetStaticHyperParameters(const Aws::Map< Aws::String, Aws::String > &value)
HyperParameterTrainingJobDefinition & WithVpcConfig(VpcConfig &&value)
HyperParameterTrainingJobDefinition & WithEnableNetworkIsolation(bool value)
HyperParameterTrainingJobDefinition & AddEnvironment(Aws::String &&key, const char *value)
HyperParameterTrainingJobDefinition & AddEnvironment(const Aws::String &key, Aws::String &&value)
HyperParameterTrainingJobDefinition & WithInputDataConfig(Aws::Vector< Channel > &&value)
HyperParameterTrainingJobDefinition & WithOutputDataConfig(const OutputDataConfig &value)
HyperParameterTrainingJobDefinition & WithHyperParameterTuningResourceConfig(HyperParameterTuningResourceConfig &&value)
HyperParameterTrainingJobDefinition & WithCheckpointConfig(CheckpointConfig &&value)
HyperParameterTrainingJobDefinition & WithResourceConfig(const ResourceConfig &value)
HyperParameterTrainingJobDefinition & WithEnableInterContainerTrafficEncryption(bool value)
HyperParameterTrainingJobDefinition & AddStaticHyperParameters(const char *key, const char *value)
HyperParameterTrainingJobDefinition & AddEnvironment(const char *key, Aws::String &&value)
HyperParameterTrainingJobDefinition & WithResourceConfig(ResourceConfig &&value)
const HyperParameterAlgorithmSpecification & GetAlgorithmSpecification() const
HyperParameterTrainingJobDefinition & WithEnvironment(const Aws::Map< Aws::String, Aws::String > &value)
HyperParameterTrainingJobDefinition & WithRetryStrategy(const RetryStrategy &value)
void SetAlgorithmSpecification(HyperParameterAlgorithmSpecification &&value)
HyperParameterTrainingJobDefinition & WithTuningObjective(const HyperParameterTuningJobObjective &value)
HyperParameterTrainingJobDefinition & AddStaticHyperParameters(Aws::String &&key, Aws::String &&value)
HyperParameterTrainingJobDefinition & WithOutputDataConfig(OutputDataConfig &&value)
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
HyperParameterTrainingJobDefinition & WithEnableManagedSpotTraining(bool value)
const HyperParameterTuningResourceConfig & GetHyperParameterTuningResourceConfig() const
HyperParameterTrainingJobDefinition & WithRoleArn(Aws::String &&value)
HyperParameterTrainingJobDefinition & WithStoppingCondition(const StoppingCondition &value)
void SetStaticHyperParameters(Aws::Map< Aws::String, Aws::String > &&value)
HyperParameterTrainingJobDefinition & WithAlgorithmSpecification(HyperParameterAlgorithmSpecification &&value)
HyperParameterTrainingJobDefinition & AddEnvironment(const char *key, const char *value)
HyperParameterTrainingJobDefinition & WithHyperParameterTuningResourceConfig(const HyperParameterTuningResourceConfig &value)
void SetHyperParameterTuningResourceConfig(HyperParameterTuningResourceConfig &&value)
HyperParameterTrainingJobDefinition & AddStaticHyperParameters(const char *key, Aws::String &&value)
HyperParameterTrainingJobDefinition & WithDefinitionName(const char *value)
HyperParameterTrainingJobDefinition & AddInputDataConfig(Channel &&value)
void SetTuningObjective(const HyperParameterTuningJobObjective &value)
HyperParameterTrainingJobDefinition & WithStaticHyperParameters(Aws::Map< Aws::String, Aws::String > &&value)
void SetEnvironment(const Aws::Map< Aws::String, Aws::String > &value)
HyperParameterTrainingJobDefinition & AddStaticHyperParameters(const Aws::String &key, const Aws::String &value)
AWS_SAGEMAKER_API HyperParameterTrainingJobDefinition(Aws::Utils::Json::JsonView jsonValue)
void SetHyperParameterTuningResourceConfig(const HyperParameterTuningResourceConfig &value)
HyperParameterTrainingJobDefinition & AddEnvironment(const Aws::String &key, const Aws::String &value)
HyperParameterTrainingJobDefinition & WithVpcConfig(const VpcConfig &value)
HyperParameterTrainingJobDefinition & AddStaticHyperParameters(Aws::String &&key, const char *value)
HyperParameterTrainingJobDefinition & WithEnvironment(Aws::Map< Aws::String, Aws::String > &&value)
HyperParameterTrainingJobDefinition & WithAlgorithmSpecification(const HyperParameterAlgorithmSpecification &value)
HyperParameterTrainingJobDefinition & WithRetryStrategy(RetryStrategy &&value)
HyperParameterTrainingJobDefinition & WithDefinitionName(Aws::String &&value)
const Aws::Map< Aws::String, Aws::String > & GetStaticHyperParameters() const
HyperParameterTrainingJobDefinition & WithHyperParameterRanges(ParameterRanges &&value)
HyperParameterTrainingJobDefinition & WithRoleArn(const Aws::String &value)
HyperParameterTrainingJobDefinition & WithHyperParameterRanges(const ParameterRanges &value)
HyperParameterTrainingJobDefinition & WithDefinitionName(const Aws::String &value)
HyperParameterTrainingJobDefinition & WithRoleArn(const char *value)
HyperParameterTrainingJobDefinition & AddInputDataConfig(const Channel &value)
HyperParameterTrainingJobDefinition & WithStaticHyperParameters(const Aws::Map< Aws::String, Aws::String > &value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue