2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.onap.so.cloudify.v3.model;
23 import java.io.IOException;
24 import java.io.Serializable;
25 import java.util.Date;
28 import com.fasterxml.jackson.annotation.JsonIgnore;
29 import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
30 import com.fasterxml.jackson.annotation.JsonProperty;
31 import com.fasterxml.jackson.databind.ObjectMapper;
33 @JsonIgnoreProperties(ignoreUnknown = true)
34 //@JsonRootName("blueprint")
35 public class Blueprint implements Serializable {
41 private static final long serialVersionUID = 938604986548763151L;
43 @JsonProperty("created_at")
44 private Date createdAt;
46 @JsonProperty("description")
47 private String description;
52 @JsonProperty("main_file_name")
53 private String mainFileName;
56 private Map<String, Object> plan = null;
58 @JsonProperty("tenant_name")
59 private String tenantName;
61 @JsonProperty("updated_at")
62 private Date updatedAt;
64 public Date getCreatedAt() {
68 public void setCreatedAt(Date createdAt) {
69 this.createdAt = createdAt;
72 public String getDescription() {
76 public void setDescription(String description) {
77 this.description = description;
80 public String getId() {
84 public void setId(String id) {
88 public String getMainFileName() {
92 public void setMainFileName(String mainFileName) {
93 this.mainFileName = mainFileName;
96 public Map<String, Object> getPlan() {
100 public void setPlan(Map<String, Object> plan) {
104 public String getTenantName() {
108 public void setTenantName(String tenantName) {
109 this.tenantName = tenantName;
112 public Date getUpdatedAt() {
116 public void setUpdatedAt(Date updatedAt) {
117 this.updatedAt = updatedAt;
122 * Return an output as a Json-mapped Object of the provided type.
123 * This is useful for json-object outputs.
125 public <T> T getMapValue (Map<String,Object> map, String key, Class<T> type)
128 ObjectMapper mapper = new ObjectMapper();
130 if (map.containsKey(key)) {
132 String s = mapper.writeValueAsString(map.get(key));
133 return (mapper.readValue(s, type));
135 catch (IOException e) {
143 public String toString() {
144 return "Deployment{" +
146 ", description='" + description + '\'' +
147 ", createdAt=" + createdAt +
148 ", updatedAt=" + updatedAt +
149 ", mainFileName='" + mainFileName + '\'' +
150 ", tenantName='" + tenantName + '\'' +
154 /* Add a definition of the Cloudify "plan" attribute once we know what it is.
156 @JsonIgnoreProperties(ignoreUnknown=true)
157 public static final class Plan {