View Javadoc

    1   /*
    2    * Copyright 2010 University Corporation for Advanced Internet Development, Inc.
    3    *
    4    * Licensed under the Apache License, Version 2.0 (the "License");
    5    * you may not use this file except in compliance with the License.
    6    * You may obtain a copy of the License at
    7    *
    8    * http://www.apache.org/licenses/LICENSE-2.0
    9    *
    10   * Unless required by applicable law or agreed to in writing, software
    11   * distributed under the License is distributed on an "AS IS" BASIS,
    12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13   * See the License for the specific language governing permissions and
    14   * limitations under the License.
    15   */
    16
    17  package edu.internet2.middleware.shibboleth.wayf.idpdisco;
    18
    19  import java.util.List;
    20
    21  import javax.xml.namespace.QName;
    22
    23  import org.opensaml.common.SAMLObject;
    24
    25  /**
    26   * See IdP Discovery and Login UI Metadata Extension Profile.
    27   *
    28   * @author RDW 27/Aug/2010
    29   *
    30   * Reflects the DiscoHints
    31   */
    32  public interface DiscoHints extends SAMLObject {
    33      /** Namespace for Discovery Service metadata extensions. */
    34      public static final String MDUI_NS = "urn:oasis:names:tc:SAML:metadata:ui";
    35
    36      /** Default namespace prefix used by this library. */
    37      public static final String  MDUI_PREFIX = "mdui";
    38
    39      /** Name of the element inside the Extensions. */
    40      public static final String DEFAULT_ELEMENT_LOCAL_NAME = "DiscoHints";
    41
    42      /** Default element name. */
    43      public static final QName DEFAULT_ELEMENT_NAME = new QName(MDUI_NS, DEFAULT_ELEMENT_LOCAL_NAME,
    44              MDUI_PREFIX);
    45
    46      /**
    47       * The <IPHint> element specifies a set of [CIDR] blocks associated with,
    48       *  or serviced by, the entity.  Both IPv4 and IPv6 CIDR blocks MUST be supported.
    49       *
    50       * @return hints
    51       */
    52      public List <IPHint> getIPHints();
    53
    54      /** The <DomainHint> element specifies a set of DNS domains associated with,
    55       * or serviced by, the entity.
    56       * @return hints.
    57       */
    58      public List <DomainHint> getDomainHints();
    59
    60      /** The <GeolocationHint> element specifies the geographic coordinates associated
    61       *  with, or serviced by, the entity.  Coordinates are given in decimal form using
    62       *  the World Geodetic System (2d) coordinate system.
    63       *
    64       * @return hints
    65       */
    66      public List <GeolocationHint> getGeolocationHints();
    67
    68  }