/******************************************************************************* * Copyright (c) 2012 GigaSpaces Technologies Ltd. All rights reserved * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ******************************************************************************/ /** * @author rafip, noak * @since 2.0.0 * <p> * * <h4>Commands</h4> * {@link org.cloudifysource.shell.commands.AbstractGSCommand} - Implements the Action object of the karaf framework. * <br> * This is the base class for each Command object we add. This class holds all of the relevant primitives and objects * each command needs to use (e.g. CommandSession, messages resource bundle). * <p> * * {@link org.cloudifysource.shell.commands.AdminAwareCommand} - Extends * {@link org.cloudifysource.shell.commands.AbstractGSCommand}. * <br> * This is the base class for each Command Object that requires a connection to a rest server or to use the Admin API * object. If the user did not execute the {@link org.cloudifysource.shell.commands.Connect} command before using this * command, the command will not be executed and an error message will be returned. * <p> * * The commands can extend one of the following classes:<br> * 1. org.apache.karaf.shell.console.AbstractAction (e.g. {@link org.cloudifysource.shell.commands.Quit})<br> * 2. {@link org.cloudifysource.shell.commands.AbstractGSCommand} * (e.g. {@link org.cloudifysource.shell.commands.Connect})<br> * 3. {@link org.cloudifysource.shell.commands.AdminAwareCommand} * (e.g. {@link org.cloudifysource.shell.commands.InstallService}). * <p> * * <h4>Exception handling</h4> * Exception handling is performed using {@link org.cloudifysource.shell.commands.CLIException} as a basic CLI * exception, or {@link org.cloudifysource.shell.commands.CLIStatusException} for more detailed exceptions with a reason * code and optionally arguments to be passed to the message formatter. * */ package org.cloudifysource.shell.commands;