@@ 13-38 (lines=26) @@ | ||
10 | use Youshido\GraphQL\Config\Object\EnumTypeConfig; |
|
11 | use Youshido\GraphQL\Type\Enum\AbstractEnumType; |
|
12 | ||
13 | class EnumType extends AbstractEnumType implements TypeSystemPluginReferenceInterface, CacheableEdgeInterface { |
|
14 | use TypeSystemPluginReferenceTrait; |
|
15 | use CacheableEdgeTrait; |
|
16 | ||
17 | /** |
|
18 | * {@inheritdoc} |
|
19 | */ |
|
20 | public function __construct(EnumPluginBase $plugin, array $config = []) { |
|
21 | $this->plugin = $plugin; |
|
22 | $this->config = new EnumTypeConfig($config, $this); |
|
23 | } |
|
24 | ||
25 | /** |
|
26 | * {@inheritdoc} |
|
27 | */ |
|
28 | protected function getConfigValue($key, $default = NULL) { |
|
29 | return !empty($this->config) ? $this->config->get($key, $default) : $default; |
|
30 | } |
|
31 | ||
32 | /** |
|
33 | * {@inheritdoc} |
|
34 | */ |
|
35 | public function getValues() { |
|
36 | return $this->getConfigValue('values', []); |
|
37 | } |
|
38 | } |
|
39 |
@@ 13-38 (lines=26) @@ | ||
10 | use Youshido\GraphQL\Config\Object\InputObjectTypeConfig; |
|
11 | use Youshido\GraphQL\Type\InputObject\AbstractInputObjectType; |
|
12 | ||
13 | class InputObjectType extends AbstractInputObjectType implements TypeSystemPluginReferenceInterface, CacheableEdgeInterface { |
|
14 | use TypeSystemPluginReferenceTrait; |
|
15 | use CacheableEdgeTrait; |
|
16 | ||
17 | /** |
|
18 | * {@inheritdoc} |
|
19 | */ |
|
20 | public function __construct(InputTypePluginBase $plugin, array $config = []) { |
|
21 | $this->plugin = $plugin; |
|
22 | $this->config = new InputObjectTypeConfig($config, $this); |
|
23 | } |
|
24 | ||
25 | /** |
|
26 | * {@inheritdoc} |
|
27 | */ |
|
28 | protected function getConfigValue($key, $default = NULL) { |
|
29 | return !empty($this->config) ? $this->config->get($key, $default) : $default; |
|
30 | } |
|
31 | ||
32 | /** |
|
33 | * {@inheritdoc} |
|
34 | */ |
|
35 | public function build($config) { |
|
36 | // Nothing to do here. |
|
37 | } |
|
38 | } |
|
39 |