001package org.apache.turbine.util.uri;
002
003
004/*
005 * Licensed to the Apache Software Foundation (ASF) under one
006 * or more contributor license agreements.  See the NOTICE file
007 * distributed with this work for additional information
008 * regarding copyright ownership.  The ASF licenses this file
009 * to you under the Apache License, Version 2.0 (the
010 * "License"); you may not use this file except in compliance
011 * with the License.  You may obtain a copy of the License at
012 *
013 *   http://www.apache.org/licenses/LICENSE-2.0
014 *
015 * Unless required by applicable law or agreed to in writing,
016 * software distributed under the License is distributed on an
017 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
018 * KIND, either express or implied.  See the License for the
019 * specific language governing permissions and limitations
020 * under the License.
021 */
022
023
024/**
025 * An interface class which describes the absolute minimum of methods that
026 * a Turbine URI class must implement.
027 *
028 * @author <a href="mailto:hps@intermeta.de">Henning P. Schmiedehausen</a>
029 * @version $Id$
030 */
031
032public interface URI
033{
034    /**
035     * Gets the script name (/servlets/Turbine).
036     *
037     * @return A String with the script name.
038     */
039    String getScriptName();
040
041    /**
042     * Gets the context path.
043     *
044     * @return A String with the context path.
045     */
046    String getContextPath();
047
048    /**
049     * Gets the server name.
050     *
051     * @return A String with the server name.
052     */
053    String getServerName();
054
055    /**
056     * Gets the server port.
057     *
058     * @return A String with the server port.
059     */
060    int getServerPort();
061
062    /**
063     * Returns the current Server Scheme
064     *
065     * @return The current Server scheme
066     *
067     */
068    String getServerScheme();
069
070    /**
071     * Returns the current reference anchor.
072     *
073     * @return A String containing the reference.
074     */
075    String getReference();
076}