001 /**
002 * Copyright 2004-2012 The Kuali Foundation
003 *
004 * Licensed under the Educational Community License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.opensource.org/licenses/ecl2.php
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016 package org.kuali.maven.common;
017
018 import java.util.List;
019
020 import org.apache.maven.project.MavenProject;
021
022 /**
023 *
024 */
025 public interface SiteContext {
026
027 // The token to use in the url instead of the Maven version if "latest=true"
028 public String getLatestToken();
029
030 // If true, this is the "latest" version of the site
031 public boolean isLatest();
032
033 // If a version contains this text it is assumed to be a snapshot version of an artifact
034 // This is usually just "SNAPSHOT"
035 public String getSnapshotSnippet();
036
037 // The group id for the organization ie "org.kuali"
038 public String getOrganizationGroupId();
039
040 // The base url for downloading ie "http://s3browse.springsource.com/browse/maven.kuali.org/"
041 public String getDownloadBase();
042
043 // The path to append to downloadBase for snapshot artifacts ie "snapshot"
044 public String getDownloadSnapshotPath();
045
046 // The path to append to downloadBase for release artifacts ie "release"
047 public String getDownloadReleasePath();
048
049 // The path to append to downloadBase for non-Kuali artifacts ie "external"
050 public String getDownloadExternalPath();
051
052 // The base url for the public web site ie "http://site.kuali.org"
053 public String getPublicBase();
054
055 // The base url for publishing the public web site ie "s3://site.origin.kuali.org"
056 public String getPublishBase();
057
058 // POM's for the organization
059 public List<MavenProject> getOrgPoms();
060 }