/** * Copyright (C) 2010 Cloud.com, Inc. All rights reserved. * * This software is licensed under the GNU General Public License v3 or later. * * It is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * */ package com.cloud.api.doc; import java.util.List; public class Argument implements Comparable{ private String name; private String description; private Boolean required; private String type; private List arguments; public Argument(String name) { this.name = name; } public Argument(String name, String description, boolean required) { this.name = name; this.description = description; this.required = required; } public Argument(String name, String description) { this.name = name; this.description = description; } public String getType() { return this.type; } public void setType(String type) { this.type = type; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public Boolean isRequired() { return required; } public void setRequired(Boolean required) { this.required = required; } public List getArguments() { return arguments; } public void setArguments(List arguments) { this.arguments = arguments; } public int compareTo(Object anotherAgrument) throws ClassCastException { if (!(anotherAgrument instanceof Argument)) throw new ClassCastException("An Argument object expected."); Argument argument = (Argument)anotherAgrument; return this.getName().compareToIgnoreCase(argument.getName()); } public boolean hasArguments() { return (arguments!= null && !arguments.isEmpty()); } }