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.openecomp.mso.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 {
37 private static final long serialVersionUID = 1L;
39 @JsonProperty("created_at")
40 private Date createdAt;
42 @JsonProperty("description")
43 private String description;
48 @JsonProperty("main_file_name")
49 private String mainFileName;
52 private Map<String, Object> plan = null;
54 @JsonProperty("tenant_name")
55 private String tenantName;
57 @JsonProperty("updated_at")
58 private Date updatedAt;
60 public Date getCreatedAt() {
64 public void setCreatedAt(Date createdAt) {
65 this.createdAt = createdAt;
68 public String getDescription() {
72 public void setDescription(String description) {
73 this.description = description;
76 public String getId() {
80 public void setId(String id) {
84 public String getMainFileName() {
88 public void setMainFileName(String mainFileName) {
89 this.mainFileName = mainFileName;
92 public Map<String, Object> getPlan() {
96 public void setPlan(Map<String, Object> plan) {
100 public String getTenantName() {
104 public void setTenantName(String tenantName) {
105 this.tenantName = tenantName;
108 public Date getUpdatedAt() {
112 public void setUpdatedAt(Date updatedAt) {
113 this.updatedAt = updatedAt;
118 * Return an output as a Json-mapped Object of the provided type.
119 * This is useful for json-object outputs.
121 public <T> T getMapValue (Map<String,Object> map, String key, Class<T> type)
124 ObjectMapper mapper = new ObjectMapper();
126 if (map.containsKey(key)) {
128 String s = mapper.writeValueAsString(map.get(key));
129 return (mapper.readValue(s, type));
131 catch (IOException e) {
139 public String toString() {
140 return "Deployment{" +
142 ", description='" + description + '\'' +
143 ", createdAt=" + createdAt +
144 ", updatedAt=" + updatedAt +
145 ", mainFileName='" + mainFileName + '\'' +
146 ", tenantName='" + tenantName + '\'' +
150 /* Add a definition of the Cloudify "plan" attribute once we know what it is.
152 @JsonIgnoreProperties(ignoreUnknown=true)
153 public static final class Plan {