summaryrefslogtreecommitdiffstats
path: root/verigraph/src/it/polito/verigraph/tosca/yaml
diff options
context:
space:
mode:
Diffstat (limited to 'verigraph/src/it/polito/verigraph/tosca/yaml')
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/AntispamConfigurationYaml.java24
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/AntispamNode.java24
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/CacheConfigurationYaml.java26
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/CacheNode.java22
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/ConfigurationYaml.java16
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/DpiConfigurationYaml.java26
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/DpiNode.java22
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndhostConfigurationYaml.java67
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndhostNode.java22
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndpointConfigurationYaml.java26
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndpointNode.java22
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/FieldModifierConfigurationYaml.java26
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/FieldModifierNode.java21
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/FirewallConfigurationYaml.java24
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/FirewallNode.java22
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailClientConfigurationYaml.java24
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailClientNode.java21
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailServerConfigurationYaml.java26
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailServerNode.java21
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/NatConfigurationYaml.java27
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/NatNode.java21
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/NodeTemplateYaml.java55
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/RelationshipTemplateYaml.java30
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/ServiceTemplateYaml.java39
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/TopologyTemplateYaml.java35
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/VerificationYaml.java58
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnAccessConfigurationYaml.java25
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnAccessNode.java21
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnExitConfigurationYaml.java24
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnExitNode.java22
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebClientConfigurationYaml.java25
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebClientNode.java21
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebServerConfigurationYaml.java24
-rw-r--r--verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebServerNode.java21
34 files changed, 930 insertions, 0 deletions
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/AntispamConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/AntispamConfigurationYaml.java
new file mode 100644
index 0000000..b0a082d
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/AntispamConfigurationYaml.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import java.util.List;
+
+public class AntispamConfigurationYaml implements ConfigurationYaml {
+ private List<String> sources;
+
+ public List<String> getSources() {
+ return sources;
+ }
+
+ public void setSources(List<String> sources) {
+ this.sources = sources;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/AntispamNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/AntispamNode.java
new file mode 100644
index 0000000..9d02e87
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/AntispamNode.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class AntispamNode extends NodeTemplateYaml {
+ private AntispamConfigurationYaml properties;
+
+ public AntispamConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(AntispamConfigurationYaml properties) {
+ this.properties = properties;
+ }
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/CacheConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/CacheConfigurationYaml.java
new file mode 100644
index 0000000..5cf03cd
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/CacheConfigurationYaml.java
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class CacheConfigurationYaml implements ConfigurationYaml {
+ private List<String> resources;
+
+ public List<String> getResources() {
+ return resources;
+ }
+
+ public void setResources(List<String> resources) {
+ this.resources = resources;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/CacheNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/CacheNode.java
new file mode 100644
index 0000000..99adb2e
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/CacheNode.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+public class CacheNode extends NodeTemplateYaml {
+ private CacheConfigurationYaml properties;
+
+ public CacheConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(CacheConfigurationYaml properties) {
+ this.properties = properties;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/ConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/ConfigurationYaml.java
new file mode 100644
index 0000000..b0e4000
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/ConfigurationYaml.java
@@ -0,0 +1,16 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+
+//Empty interface implemented by all the Yaml configuration beans allowing
+//an easier and type indipendet use of the objects
+public interface ConfigurationYaml {
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/DpiConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/DpiConfigurationYaml.java
new file mode 100644
index 0000000..3074780
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/DpiConfigurationYaml.java
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class DpiConfigurationYaml implements ConfigurationYaml{
+ private List<String> notAllowedList;
+
+ public List<String> getNotAllowedList() {
+ return notAllowedList;
+ }
+
+ public void setNotAllowedList(List<String> notAllowedList) {
+ this.notAllowedList = notAllowedList;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/DpiNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/DpiNode.java
new file mode 100644
index 0000000..d200cc2
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/DpiNode.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+public class DpiNode extends NodeTemplateYaml {
+ private DpiConfigurationYaml properties;
+
+ public DpiConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(DpiConfigurationYaml properties) {
+ this.properties = properties;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndhostConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndhostConfigurationYaml.java
new file mode 100644
index 0000000..e1cfbd8
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndhostConfigurationYaml.java
@@ -0,0 +1,67 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class EndhostConfigurationYaml implements ConfigurationYaml{
+ private String body;
+ private int sequence;
+ private String protocol;
+ private String email_from;
+ private String url;
+ private String options;
+ private String destination;
+
+ public String getBody() {
+ return body;
+ }
+ public void setBody(String body) {
+ this.body = body;
+ }
+ public int getSequence() {
+ return sequence;
+ }
+ public void setSequence(int sequence) {
+ this.sequence = sequence;
+ }
+ public String getProtocol() {
+ return protocol;
+ }
+ public void setProtocol(String protocol) {
+ this.protocol = protocol;
+ }
+ public String getEmail_from() {
+ return email_from;
+ }
+ public void setEmail_from(String email_from) {
+ this.email_from = email_from;
+ }
+ public String getUrl() {
+ return url;
+ }
+ public void setUrl(String url) {
+ this.url = url;
+ }
+ public String getOptions() {
+ return options;
+ }
+ public void setOptions(String options) {
+ this.options = options;
+ }
+ public String getDestination() {
+ return destination;
+ }
+ public void setDestination(String destination) {
+ this.destination = destination;
+ }
+
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndhostNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndhostNode.java
new file mode 100644
index 0000000..c47b14e
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndhostNode.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+public class EndhostNode extends NodeTemplateYaml{
+ private EndhostConfigurationYaml properties;
+
+ public EndhostConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(EndhostConfigurationYaml properties) {
+ this.properties = properties;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndpointConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndpointConfigurationYaml.java
new file mode 100644
index 0000000..76cbec6
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndpointConfigurationYaml.java
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class EndpointConfigurationYaml implements ConfigurationYaml{
+ private List<String> names;
+
+ public List<String> getNames() {
+ return names;
+ }
+
+ public void setNames(List<String> names) {
+ this.names = names;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndpointNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndpointNode.java
new file mode 100644
index 0000000..06b50cd
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/EndpointNode.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+public class EndpointNode extends NodeTemplateYaml {
+ private EndpointConfigurationYaml properties;
+
+ public EndpointConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(EndpointConfigurationYaml properties) {
+ this.properties = properties;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/FieldModifierConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/FieldModifierConfigurationYaml.java
new file mode 100644
index 0000000..64ff4c7
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/FieldModifierConfigurationYaml.java
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class FieldModifierConfigurationYaml implements ConfigurationYaml{
+ private List<String> names;
+
+ public List<String> getNames() {
+ return names;
+ }
+
+ public void setNames(List<String> names) {
+ this.names = names;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/FieldModifierNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/FieldModifierNode.java
new file mode 100644
index 0000000..f805337
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/FieldModifierNode.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+public class FieldModifierNode extends NodeTemplateYaml {
+ private FieldModifierConfigurationYaml properties;
+
+ public FieldModifierConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(FieldModifierConfigurationYaml properties) {
+ this.properties = properties;
+ }
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/FirewallConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/FirewallConfigurationYaml.java
new file mode 100644
index 0000000..85634d4
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/FirewallConfigurationYaml.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import java.util.Map;
+
+public class FirewallConfigurationYaml implements ConfigurationYaml{
+ private Map<String, String> elements;
+
+ public Map<String, String> getElements() {
+ return elements;
+ }
+
+ public void setElements(Map<String, String> elements) {
+ this.elements = elements;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/FirewallNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/FirewallNode.java
new file mode 100644
index 0000000..d8952ae
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/FirewallNode.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+public class FirewallNode extends NodeTemplateYaml {
+ private FirewallConfigurationYaml properties;
+
+ public FirewallConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(FirewallConfigurationYaml properties) {
+ this.properties = properties;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailClientConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailClientConfigurationYaml.java
new file mode 100644
index 0000000..2120c4d
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailClientConfigurationYaml.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class MailClientConfigurationYaml implements ConfigurationYaml {
+ private String mailserver;
+
+ public String getMailserver() {
+ return mailserver;
+ }
+
+ public void setMailserver(String mailserver) {
+ this.mailserver = mailserver;
+ }
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailClientNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailClientNode.java
new file mode 100644
index 0000000..fa75154
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailClientNode.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+public class MailClientNode extends NodeTemplateYaml {
+ private MailClientConfigurationYaml properties;
+
+ public MailClientConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(MailClientConfigurationYaml properties) {
+ this.properties = properties;
+ }
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailServerConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailServerConfigurationYaml.java
new file mode 100644
index 0000000..3672727
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailServerConfigurationYaml.java
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class MailServerConfigurationYaml implements ConfigurationYaml {
+ private List<String> names;
+
+ public List<String> getNames() {
+ return names;
+ }
+
+ public void setNames(List<String> names) {
+ this.names = names;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailServerNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailServerNode.java
new file mode 100644
index 0000000..6f7d493
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/MailServerNode.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+public class MailServerNode extends NodeTemplateYaml {
+ private MailServerConfigurationYaml properties;
+
+ public MailServerConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(MailServerConfigurationYaml properties) {
+ this.properties = properties;
+ }
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/NatConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/NatConfigurationYaml.java
new file mode 100644
index 0000000..49d34c8
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/NatConfigurationYaml.java
@@ -0,0 +1,27 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import java.util.List;
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class NatConfigurationYaml implements ConfigurationYaml {
+ private List<String> sources;
+
+ public List<String> getSources() {
+ return sources;
+ }
+
+ public void setSources(List<String> sources) {
+ this.sources = sources;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/NatNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/NatNode.java
new file mode 100644
index 0000000..cd30172
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/NatNode.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+public class NatNode extends NodeTemplateYaml {
+ private NatConfigurationYaml properties;
+
+ public NatConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(NatConfigurationYaml properties) {
+ this.properties = properties;
+ }
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/NodeTemplateYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/NodeTemplateYaml.java
new file mode 100644
index 0000000..9821f7c
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/NodeTemplateYaml.java
@@ -0,0 +1,55 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import com.fasterxml.jackson.annotation.*;
+
+//These annotations allow polimorphic deserialization of yaml text into beans by using the type field of each node
+//In case a specified type is unknown the default implementation will be FieldModifierNode
+@JsonIgnoreProperties(ignoreUnknown = true)
+@JsonTypeInfo(use=JsonTypeInfo.Id.NAME, include=JsonTypeInfo.As.PROPERTY, property="type", defaultImpl=FieldModifierNode.class, visible= true)
+@JsonSubTypes({
+ @JsonSubTypes.Type(value = AntispamNode.class, name="verigraph.nodeTypes.Antispam"),
+ @JsonSubTypes.Type(value = CacheNode.class, name="verigraph.nodeTypes.Cache"),
+ @JsonSubTypes.Type(value = DpiNode.class, name="verigraph.nodeTypes.Dpi"),
+ @JsonSubTypes.Type(value = EndhostNode.class, name="verigraph.nodeTypes.Endhost"),
+ @JsonSubTypes.Type(value = EndpointNode.class, name="verigraph.nodeTypes.Endpoint"),
+ @JsonSubTypes.Type(value = FieldModifierNode.class, name="verigraph.nodeTypes.FieldModifier"),
+ @JsonSubTypes.Type(value = FirewallNode.class, name="verigraph.nodeTypes.Firewall"),
+ @JsonSubTypes.Type(value = MailClientNode.class, name="verigraph.nodeTypes.MailClient"),
+ @JsonSubTypes.Type(value = MailServerNode.class, name="verigraph.nodeTypes.MailServer"),
+ @JsonSubTypes.Type(value = NatNode.class, name="verigraph.nodeTypes.Nat"),
+ @JsonSubTypes.Type(value = VpnAccessNode.class, name="verigraph.nodeTypes.VpnAccess"),
+ @JsonSubTypes.Type(value = VpnExitNode.class, name="verigraph.nodeTypes.VpnExit"),
+ @JsonSubTypes.Type(value = WebClientNode.class, name="verigraph.nodeTypes.WebClient"),
+ @JsonSubTypes.Type(value = WebServerNode.class, name="verigraph.nodeTypes.WebServer")
+})
+public class NodeTemplateYaml {
+ private String name;
+ private String type;
+
+ public String getName() {
+ return name;
+ }
+ public void setName(String name) {
+ this.name = name;
+ }
+ public String getType() {
+ return type;
+ }
+ public void setType(String type) {
+ this.type = type;
+ }
+
+ // //Generic YamlNode configuration to be extended in single nodes
+ // public interface ConfigurationYaml {
+ // }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/RelationshipTemplateYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/RelationshipTemplateYaml.java
new file mode 100644
index 0000000..d828775
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/RelationshipTemplateYaml.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import java.util.Map;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class RelationshipTemplateYaml {
+ private String type;
+ private Map<String, String> properties;
+ public String getType() {
+ return type;
+ }
+ public void setType(String type) {
+ this.type = type;
+ }
+ public Map<String, String> getProperties() {
+ return properties;
+ }
+ public void setProperties(Map<String, String> properties) {
+ this.properties = properties;
+ }
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/ServiceTemplateYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/ServiceTemplateYaml.java
new file mode 100644
index 0000000..0955a7d
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/ServiceTemplateYaml.java
@@ -0,0 +1,39 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.*;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class ServiceTemplateYaml {
+ private Map<String, String> metadata;
+ private String description;
+ private TopologyTemplateYaml topology_template;
+
+ public Map<String, String> getMetadata() {
+ return metadata;
+ }
+ public void setMetadata(Map<String, String> metadata) {
+ this.metadata = metadata;
+ }
+ public String getDescription() {
+ return description;
+ }
+ public void setDescription(String description) {
+ this.description = description;
+ }
+ public TopologyTemplateYaml getTopology_template() {
+ return topology_template;
+ }
+ public void setTopology_template(TopologyTemplateYaml topology_template) {
+ this.topology_template = topology_template;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/TopologyTemplateYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/TopologyTemplateYaml.java
new file mode 100644
index 0000000..2653697
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/TopologyTemplateYaml.java
@@ -0,0 +1,35 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class TopologyTemplateYaml {
+ private Map<String, NodeTemplateYaml> node_templates;
+ private Map<String, RelationshipTemplateYaml> relationship_templates;
+
+ public Map<String, RelationshipTemplateYaml> getRelationship_templates() {
+ return relationship_templates;
+ }
+
+ public void setRelationship_templates(Map<String, RelationshipTemplateYaml> relationship_templates) {
+ this.relationship_templates = relationship_templates;
+ }
+
+ public Map<String, NodeTemplateYaml> getNode_templates() {
+ return node_templates;
+ }
+
+ public void setNode_templates(Map<String, NodeTemplateYaml> node_templates) {
+ this.node_templates = node_templates;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VerificationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VerificationYaml.java
new file mode 100644
index 0000000..2f572a6
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VerificationYaml.java
@@ -0,0 +1,58 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import java.util.List;
+import com.fasterxml.jackson.annotation.*;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class VerificationYaml {
+ /* private Map<String, String> metadata;
+ private String description;*/
+ private String result;
+ private String comment;
+ private List<ServiceTemplateYaml> paths;
+
+ /* public Map<String, String> getMetadata() {
+ return metadata;
+ }
+ public void setMetadata(Map<String, String> metadata) {
+ this.metadata = metadata;
+ }
+ public String getDescription() {
+ return description;
+ }
+ public void setDescription(String description) {
+ this.description = description;
+ }*/
+ public String getResult() {
+ return result;
+ }
+
+ public void setResult(String result) {
+ this.result = result;
+ }
+
+ public String getComment() {
+ return comment;
+ }
+
+ public void setComment(String comment) {
+ this.comment = comment;
+ }
+
+ public List<ServiceTemplateYaml> getPaths() {
+ return paths;
+ }
+
+ public void setPaths(List<ServiceTemplateYaml> paths) {
+ this.paths = paths;
+ }
+
+} \ No newline at end of file
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnAccessConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnAccessConfigurationYaml.java
new file mode 100644
index 0000000..807059f
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnAccessConfigurationYaml.java
@@ -0,0 +1,25 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class VpnAccessConfigurationYaml implements ConfigurationYaml {
+ private String vpnexit;
+
+ public String getVpnexit() {
+ return vpnexit;
+ }
+
+ public void setVpnexit(String vpnexit) {
+ this.vpnexit = vpnexit;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnAccessNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnAccessNode.java
new file mode 100644
index 0000000..9058615
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnAccessNode.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+public class VpnAccessNode extends NodeTemplateYaml{
+ private VpnAccessConfigurationYaml properties;
+
+ public VpnAccessConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(VpnAccessConfigurationYaml properties) {
+ this.properties = properties;
+ }
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnExitConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnExitConfigurationYaml.java
new file mode 100644
index 0000000..090e337
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnExitConfigurationYaml.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class VpnExitConfigurationYaml implements ConfigurationYaml {
+ private String vpnaccess;
+
+ public String getVpnaccess() {
+ return vpnaccess;
+ }
+
+ public void setVpnaccess(String vpnaccess) {
+ this.vpnaccess = vpnaccess;
+ }
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnExitNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnExitNode.java
new file mode 100644
index 0000000..775b8d3
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/VpnExitNode.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+public class VpnExitNode extends NodeTemplateYaml {
+ private VpnExitConfigurationYaml properties;
+
+ public VpnExitConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(VpnExitConfigurationYaml properties) {
+ this.properties = properties;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebClientConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebClientConfigurationYaml.java
new file mode 100644
index 0000000..02825ed
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebClientConfigurationYaml.java
@@ -0,0 +1,25 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class WebClientConfigurationYaml implements ConfigurationYaml{
+ private String nameWebServer;
+
+ public String getNameWebServer() {
+ return nameWebServer;
+ }
+
+ public void setNameWebServer(String nameWebServer) {
+ this.nameWebServer = nameWebServer;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebClientNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebClientNode.java
new file mode 100644
index 0000000..5e01194
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebClientNode.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+public class WebClientNode extends NodeTemplateYaml {
+ private WebClientConfigurationYaml properties;
+
+ public WebClientConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(WebClientConfigurationYaml properties) {
+ this.properties = properties;
+ }
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebServerConfigurationYaml.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebServerConfigurationYaml.java
new file mode 100644
index 0000000..1f37c09
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebServerConfigurationYaml.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+import java.util.List;
+
+public class WebServerConfigurationYaml implements ConfigurationYaml{
+ public List<String> names;
+
+ public List<String> getNames() {
+ return names;
+ }
+
+ public void setNames(List<String> names) {
+ this.names = names;
+ }
+
+}
diff --git a/verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebServerNode.java b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebServerNode.java
new file mode 100644
index 0000000..5340b77
--- /dev/null
+++ b/verigraph/src/it/polito/verigraph/tosca/yaml/beans/WebServerNode.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2018 Politecnico di Torino and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+package it.polito.verigraph.tosca.yaml.beans;
+
+public class WebServerNode extends NodeTemplateYaml {
+ private WebServerConfigurationYaml properties;
+
+ public WebServerConfigurationYaml getProperties() {
+ return properties;
+ }
+
+ public void setProperties(WebServerConfigurationYaml properties) {
+ this.properties = properties;
+ }
+}