001/*
002 * Copyright 2011-2013 UnboundID Corp.
003 *
004 * This program is free software; you can redistribute it and/or modify
005 * it under the terms of the GNU General Public License (GPLv2 only)
006 * or the terms of the GNU Lesser General Public License (LGPLv2.1 only)
007 * as published by the Free Software Foundation.
008 *
009 * This program is distributed in the hope that it will be useful,
010 * but WITHOUT ANY WARRANTY; without even the implied warranty of
011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
012 * GNU General Public License for more details.
013 *
014 * You should have received a copy of the GNU General Public License
015 * along with this program; if not, see <http://www.gnu.org/licenses>.
016 */
017
018package com.unboundid.scim.sdk;
019
020
021
022import java.util.ArrayList;
023import java.util.Collections;
024import java.util.List;
025
026//import com.unboundid.util.ThreadSafety;
027//import com.unboundid.util.ThreadSafetyLevel;
028
029
030
031/**
032 * This class provides information about the current version of the UnboundID
033 * SCIM SDK for Java.
034 */
035//@ThreadSafety(level=ThreadSafetyLevel.COMPLETELY_THREADSAFE)
036public final class Version
037{
038  //
039  // NOTE -- This file is dynamically generated.  Do not edit it.  If you need
040  //         to add something to it, then add it to the
041  //         resource/Version.java.stub file below the SCIM SDK build root.
042  //
043
044
045
046  /**
047   * The official full product name for the SCIM SDK.  For this build, the
048   * value is "UnboundID SCIM SDK".
049   */
050  public static final String PRODUCT_NAME = "UnboundID SCIM SDK";
051
052
053
054  /**
055   * The short product name for the SCIM SDK.  This will not have any spaces.
056   * For this build, the value is "unboundid-scimsdk".
057   */
058  public static final String SHORT_NAME = "unboundid-scimsdk";
059
060
061
062  /**
063   * The version string for the SCIM SDK.
064   * For this build, the value is "1.5.0".
065   */
066  public static final String VERSION = "1.5.0";
067
068
069
070  /**
071   * A timestamp that indicates when this build of the SCIM SDK was generated.
072   * For this build, the value is "20131115094924Z".
073   */
074  public static final String BUILD_TIMESTAMP = "20131115094924Z";
075
076
077
078  /**
079   * The Subversion path associated with the build root directory from which
080   * this build of the SCIM SDK was generated.  It may be an absolute local
081   * filesystem path if the Subversion path isn't available at build time.
082   * For this build, the value is "https://svn.unboundid.lab/components/scim/tags/scim-1.5.0".
083   */
084  public static final String REPOSITORY_PATH = "https://svn.unboundid.lab/components/scim/tags/scim-1.5.0";
085
086
087
088  /**
089   * The source revision number from which this build of the SCIM SDK was
090   * generated.  It may be -1 if the Subversion revision isn't available at
091   * build time.  For this build, the value is 3071.
092   */
093  public static final long REVISION_NUMBER = 3071;
094
095
096
097  /**
098   * The full version string for the SCIM SDK.  For this build, the value is
099   * "UnboundID SCIM SDK 1.5.0".
100   */
101  public static final String FULL_VERSION_STRING =
102       PRODUCT_NAME + ' ' + VERSION;
103
104
105
106  /**
107   * The short version string for the SCIM SDK.  This will not have any spaces.
108   * For this build, the value is
109   * "unboundid-scimsdk-1.5.0".
110   */
111  public static final String SHORT_VERSION_STRING =
112       SHORT_NAME + '-' + VERSION;
113
114
115
116  /**
117   * Prevent this class from being instantiated.
118   */
119  private Version()
120  {
121    // No implementation is required.
122  }
123
124
125
126  /**
127   * Prints version information from this class to standard output.
128   *
129   * @param  args  The command-line arguments provided to this program.
130   */
131  public static void main(final String... args)
132  {
133    for (final String line : getVersionLines())
134    {
135      System.out.println(line);
136    }
137  }
138
139
140
141  /**
142   * Retrieves a list of lines containing information about the SCIM SDK
143   * version.
144   *
145   * @return  A list of lines containing information about the SCIM SDK
146   *          version.
147   */
148  public static List<String> getVersionLines()
149  {
150    final ArrayList<String> versionLines = new ArrayList<String>(11);
151
152    versionLines.add("Full Version String:   " + FULL_VERSION_STRING);
153    versionLines.add("Short Version String:  " + SHORT_VERSION_STRING);
154    versionLines.add("Product Name:          " + PRODUCT_NAME);
155    versionLines.add("Short Name:            " + SHORT_NAME);
156    versionLines.add("Version:               " + VERSION);
157    versionLines.add("Build Timestamp:       " + BUILD_TIMESTAMP);
158    versionLines.add("Repository Path:       " + REPOSITORY_PATH);
159    versionLines.add("Revision Number:       " + REVISION_NUMBER);
160
161    return Collections.unmodifiableList(versionLines);
162  }
163}