se.swedenconnect.opensaml.eidas.metadata.Endpoint Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of opensaml-eidas Show documentation
Show all versions of opensaml-eidas Show documentation
OpenSAML 5.X extension library for the eIDAS Framework
The newest version!
/*
* Copyright 2016-2024 Sweden Connect
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package se.swedenconnect.opensaml.eidas.metadata;
import org.opensaml.core.xml.AttributeExtensibleXMLObject;
import org.opensaml.saml.common.SAMLObject;
import se.swedenconnect.opensaml.eidas.common.EidasConstants;
import javax.xml.namespace.QName;
/**
* Definition of the {@code MsEndpointType} type.
*
* The following schema fragment defines the MsEndpointType complex type:
*
*
* {@code
*
*
*
* Defines a member state "endpoint" (eIDAS node).
*
*
*
*
*
* The type of endpoint. Currently defined URI:s are:
* http://eidas.europa.eu/metadata/ept/ProxyService for an eIDAS Proxy Service, and,
* http://eidas.europa.eu/metadata/ept/Connector for an eIDAS Connector.
*
*
*
*
*
*
* The SAML entityID of the endpoint. For an eIDAS connector this is the entityID for
* the SP-part of the node, and for an eIDAS Proxy Service this is the entityID for the
* IdP-part of the node.
*
*
*
*
* }
*
*
* @author Martin Lindström
*/
public interface Endpoint extends SAMLObject, AttributeExtensibleXMLObject {
/** Name of the element. */
String DEFAULT_ELEMENT_LOCAL_NAME = "Endpoint";
/** Default element name. */
QName DEFAULT_ELEMENT_NAME = new QName(EidasConstants.EIDAS_SERVICELIST_NS, DEFAULT_ELEMENT_LOCAL_NAME,
EidasConstants.EIDAS_SERVICELIST_PREFIX);
/** Local name of the XSI type. */
String TYPE_LOCAL_NAME = "MsEndpointType";
/** QName of the XSI type. */
QName TYPE_NAME = new QName(EidasConstants.EIDAS_SERVICELIST_NS, TYPE_LOCAL_NAME,
EidasConstants.EIDAS_SERVICELIST_PREFIX);
/** Attribute label for the Location attribute. */
String ENDPOINT_TYPE_ATTR_NAME = "EndpointType";
/** Attribute label for the Location attribute. */
String ENTITY_ID_ATTR_NAME = "EntityID";
/** Identifier for a proxy service endpoint type. */
String PROXY_SERVICE_ENDPOINT_TYPE = "http://eidas.europa.eu/metadata/ept/ProxyService";
/** Identifier for a connector endpoint type. */
String CONNECTOR_ENDPOINT_TYPE = "http://eidas.europa.eu/metadata/ept/Connector";
/**
* Returns the endpoint type URI.
*
* @return the endpoint type
*/
String getEndpointType();
/**
* Assigns the endpoint type URI.
*
* @param endpointType the endpoint type
*/
void setEndpointType(final String endpointType);
/**
* Returns the entityID for the endpoint.
*
* @return the entityID
*/
String getEntityID();
/**
* Assigns the entityID for the endpoint.
*
* @param entityID the entityID
*/
void setEntityID(final String entityID);
/**
* For the Swedish eIDAS configuration, the {@code Suspend} attribute is used to indicate whether an endpoint has been
* suspended. This method is just a shortcut instead of using {@link #getUnknownAttributes()}.
*
* @return if the {@code Suspend} attribute has been set to {@code true} this method returns {@code true}, otherwise
* {@code false}
*/
boolean getSuspend();
/**
* Assigns the {@code Suspend} attribute. See {@link #getSuspend()}.
*
* @param suspendFlag the suspend flag
*/
void setSuspend(final boolean suspendFlag);
/**
* For the Swedish eIDAS configuration, the {@code HideFromDiscovery} attribute is used to indicate whether the proxy
* service within an endpoint should be hidden from the connector "select country view". This method is just a
* shortcut instead of using {@link #getUnknownAttributes()}.
*
* @return if the {@code HideFromDiscovery} attribute has been set to {@code true} this method returns {@code true},
* otherwise {@code false}
*/
boolean getHideFromDiscovery();
/**
* Assigns the {@code HideFromDiscovery} attribute. See {@link #getHideFromDiscovery()}.
*
* @param hideFlag the "HideFromDiscovery" flag
*/
void setHideFromDiscovery(final boolean hideFlag);
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy