/******************************************************************************* * Copyright (c) 1998, 2015 Oracle and/or its affiliates. All rights reserved. * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0 * which accompanies this distribution. * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html * and the Eclipse Distribution License is available at * http://www.eclipse.org/org/documents/edl-v10.php. * * Contributors: * Oracle - initial API and implementation from Oracle TopLink ******************************************************************************/ package org.eclipse.persistence.tools.workbench.framework; /** * Interface for getting fairly static, application-wide information: * application name, version, etc. */ public interface Application { /** * Return the application's full product name, * e.g. "OracleAS TopLink 10g Workbench". * @see getShortProductName() */ String getFullProductName(); /** * Return the application's product name, * e.g. "OracleAS TopLink". * @see getFullProductName() * @see getShortProductName() */ String getProductName(); /** * Return the application's short product name, * e.g. "TopLink Workbench". * @see getFullProductName() */ String getShortProductName(); /** * Return the application's version, * e.g. "10.1.3". * @see getBuildNumber() */ String getVersionNumber(); /** * Return the application's full product name and version, * e.g. "OracleAS TopLink 10g Workbench 10.1.3". * @see getFullProductName() * @see getVersionNumber() */ String getFullProductNameAndVersionNumber(); /** * Return the application's build number, * typically in "yymmdd" format, e.g. "021125". * @see getVersionNumber() */ String getBuildNumber(); /** * Return the application's release designation */ String getReleaseDesignation(); /** * Return whether the application is in development mode. */ boolean isDevelopmentMode(); /** * Return whether the application is performing its first * execution in the current version. This allows us to perform * any necessary housekeeping. */ boolean isFirstExecution(); }