/* * Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: MIT-0 * * Permission is hereby granted, free of charge, to any person obtaining a copy of this * software and associated documentation files (the "Software"), to deal in the Software * without restriction, including without limitation the rights to use, copy, modify, * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ package software.amazon.qldb.tutorial.model; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; import software.amazon.qldb.tutorial.model.streams.RevisionData; /** * Represents a vehicle, serializable to (and from) Ion. */ public final class Vehicle implements RevisionData { private final String vin; private final String type; private final int year; private final String make; private final String model; private final String color; @JsonCreator public Vehicle(@JsonProperty("VIN") final String vin, @JsonProperty("Type") final String type, @JsonProperty("Year") final int year, @JsonProperty("Make") final String make, @JsonProperty("Model") final String model, @JsonProperty("Color") final String color) { this.vin = vin; this.type = type; this.year = year; this.make = make; this.model = model; this.color = color; } @JsonProperty("Color") public String getColor() { return color; } @JsonProperty("Make") public String getMake() { return make; } @JsonProperty("Model") public String getModel() { return model; } @JsonProperty("Type") public String getType() { return type; } @JsonProperty("VIN") public String getVin() { return vin; } @JsonProperty("Year") public int getYear() { return year; } @Override public String toString() { return "Vehicle{" + "vin='" + vin + '\'' + ", type='" + type + '\'' + ", year=" + year + ", make='" + make + '\'' + ", model='" + model + '\'' + ", color='" + color + '\'' + '}'; } }