Class AS4EndpointDetailProviderPeppol
java.lang.Object
com.helger.phase4.dynamicdiscovery.AS4EndpointDetailProviderPeppol
- All Implemented Interfaces:
IAS4EndpointDetailProvider
Implementation of
IAS4EndpointDetailProvider using a Peppol SMP Client to determine this
information from an endpoint.- Since:
- 0.10.6
- Author:
- Philip Helger
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final com.helger.peppol.smp.ISMPTransportProfilestatic final com.helger.smpclient.peppol.PeppolWildcardSelector.EModeDeprecated, for removal: This API element is subject to removal in a future version. -
Constructor Summary
ConstructorsConstructorDescriptionAS4EndpointDetailProviderPeppol(com.helger.smpclient.peppol.ISMPServiceGroupProvider aServiceGroupProvider, com.helger.smpclient.peppol.ISMPExtendedServiceMetadataProvider aServiceMetadataProvider) -
Method Summary
Modifier and TypeMethodDescriptioncreate(com.helger.smpclient.peppol.SMPClientReadOnly aSMPClient) Create a newAS4EndpointDetailProviderPeppolbased on the provided SMP client.final com.helger.xsds.peppol.smp1.EndpointTypefinal com.helger.smpclient.peppol.ISMPServiceGroupProviderfinal com.helger.smpclient.peppol.ISMPServiceMetadataProviderfinal com.helger.peppol.smp.ISMPTransportProfilefinal com.helger.smpclient.peppol.PeppolWildcardSelector.EModeDeprecated, for removal: This API element is subject to removal in a future version.voidinit(com.helger.peppolid.IDocumentTypeIdentifier aDocTypeID, com.helger.peppolid.IProcessIdentifier aProcID, com.helger.peppolid.IParticipantIdentifier aReceiverID) The initialization method is always called, before the details are queried.final booleanprotected com.helger.xsds.peppol.smp1.SignedServiceMetadataTyperesolvedBusdoxServiceMetadata(com.helger.peppolid.IParticipantIdentifier aReceiverID, com.helger.peppolid.IDocumentTypeIdentifier aDocTypeID) protected com.helger.xsds.peppol.smp1.SignedServiceMetadataTyperesolvedSchemeSpecificServiceMetadata(com.helger.peppolid.IParticipantIdentifier aReceiverID, com.helger.peppolid.IDocumentTypeIdentifier aDocTypeID) protected com.helger.xsds.peppol.smp1.SignedServiceMetadataTyperesolvedWildcardServiceMetadata(com.helger.peppolid.IParticipantIdentifier aReceiverID, com.helger.peppolid.IDocumentTypeIdentifier aDocTypeID) setTransportProfile(com.helger.peppol.smp.ISMPTransportProfile aTP) Change the transport profile to be used.setUsePFUOI430(boolean b) setWildcardSelectionMode(com.helger.smpclient.peppol.PeppolWildcardSelector.EMode eWildcardSelectionMode) Deprecated, for removal: This API element is subject to removal in a future version.toString()
-
Field Details
-
DEFAULT_WILDCARD_SELECTION_MODE
@Deprecated(forRemoval=true, since="3.0.0") public static final com.helger.smpclient.peppol.PeppolWildcardSelector.EMode DEFAULT_WILDCARD_SELECTION_MODEDeprecated, for removal: This API element is subject to removal in a future version. -
DEFAULT_TRANSPORT_PROFILE
public static final com.helger.peppol.smp.ISMPTransportProfile DEFAULT_TRANSPORT_PROFILE
-
-
Constructor Details
-
AS4EndpointDetailProviderPeppol
-
-
Method Details
-
getServiceGroupProvider
@Nonnull public final com.helger.smpclient.peppol.ISMPServiceGroupProvider getServiceGroupProvider()- Returns:
- The service group provider passed in the constructor. Never
null.
-
getServiceMetadataProvider
@Nonnull public final com.helger.smpclient.peppol.ISMPServiceMetadataProvider getServiceMetadataProvider()- Returns:
- The service metadata provider passed in the constructor. Never
null.
-
isUsePFUOI430
public final boolean isUsePFUOI430()- Returns:
trueto use Peppol Policy for use of Identifiers v4.3.0 logic,falseto use v4.2.0 logic.- Since:
- 3.0.7
-
setUsePFUOI430
- Parameters:
b-trueto use Peppol Policy for use of Identifiers v4.3.0 logic,falseto use v4.2.0 logic.- Returns:
- this for chaining
- Since:
- 3.0.7
-
getWildcardSelectionMode
@Nonnull @Deprecated(forRemoval=true, since="3.0.0") @DevelopersNote("This was valid for Policy for use of Identifiers 4.2.0. This is no longer valid with PFUOI 4.3.0 from May 15th 2025") public final com.helger.smpclient.peppol.PeppolWildcardSelector.EMode getWildcardSelectionMode()Deprecated, for removal: This API element is subject to removal in a future version.- Returns:
- The Peppol SMP wildcard selection to be used for document type resolution, if a
wildcard document type identifier is used. Defaults to
DEFAULT_WILDCARD_SELECTION_MODE.
-
setWildcardSelectionMode
@Nonnull @Deprecated(forRemoval=true, since="3.0.0") @DevelopersNote("This was valid for Policy for use of Identifiers 4.2.0. This is no longer valid with PFUOI 4.3.0 from May 15th 2025") public final AS4EndpointDetailProviderPeppol setWildcardSelectionMode(@Nonnull com.helger.smpclient.peppol.PeppolWildcardSelector.EMode eWildcardSelectionMode) Deprecated, for removal: This API element is subject to removal in a future version.Change the Peppol SMP wildcard selection to be used for document type resolution, if a wildcard document type identifier is used. This only has an effect if it is called prior toinit(IDocumentTypeIdentifier, IProcessIdentifier, IParticipantIdentifier).- Parameters:
eWildcardSelectionMode- The wildcard selection mode to be used. May not benull.- Returns:
- this for chaining.
-
getTransportProfile
- Returns:
- The transport profile to be used. Defaults to
DEFAULT_TRANSPORT_PROFILE.
-
setTransportProfile
@Nonnull public final AS4EndpointDetailProviderPeppol setTransportProfile(@Nonnull com.helger.peppol.smp.ISMPTransportProfile aTP) Change the transport profile to be used. This only has an effect if it is called prior toinit(IDocumentTypeIdentifier, IProcessIdentifier, IParticipantIdentifier).- Parameters:
aTP- The transport profile to be used. May not benull.- Returns:
- this for chaining.
-
getEndpoint
- Returns:
- The endpoint resolved. May only be non-
nullafterinit(IDocumentTypeIdentifier, IProcessIdentifier, IParticipantIdentifier)was called.
-
resolvedBusdoxServiceMetadata
@Nullable @OverrideOnDemand protected com.helger.xsds.peppol.smp1.SignedServiceMetadataType resolvedBusdoxServiceMetadata(@Nonnull com.helger.peppolid.IParticipantIdentifier aReceiverID, @Nonnull com.helger.peppolid.IDocumentTypeIdentifier aDocTypeID) throws com.helger.smpclient.exception.SMPClientException - Throws:
com.helger.smpclient.exception.SMPClientException
-
resolvedWildcardServiceMetadata
@Nullable @OverrideOnDemand protected com.helger.xsds.peppol.smp1.SignedServiceMetadataType resolvedWildcardServiceMetadata(@Nonnull com.helger.peppolid.IParticipantIdentifier aReceiverID, @Nonnull com.helger.peppolid.IDocumentTypeIdentifier aDocTypeID) throws com.helger.smpclient.exception.SMPClientException - Throws:
com.helger.smpclient.exception.SMPClientException
-
resolvedSchemeSpecificServiceMetadata
@Nullable @OverrideOnDemand protected com.helger.xsds.peppol.smp1.SignedServiceMetadataType resolvedSchemeSpecificServiceMetadata(@Nonnull com.helger.peppolid.IParticipantIdentifier aReceiverID, @Nonnull com.helger.peppolid.IDocumentTypeIdentifier aDocTypeID) throws com.helger.smpclient.exception.SMPClientException - Throws:
com.helger.smpclient.exception.SMPClientException
-
init
public void init(@Nonnull com.helger.peppolid.IDocumentTypeIdentifier aDocTypeID, @Nonnull com.helger.peppolid.IProcessIdentifier aProcID, @Nonnull com.helger.peppolid.IParticipantIdentifier aReceiverID) throws com.helger.phase4.util.Phase4Exception Description copied from interface:IAS4EndpointDetailProviderThe initialization method is always called, before the details are queried. This method may be called multiple times, so you may cache internally.- Specified by:
initin interfaceIAS4EndpointDetailProvider- Parameters:
aDocTypeID- document type ID. May not benull.aProcID- Process ID. May not benull.aReceiverID- Participant ID of the receiver. May not benull.- Throws:
com.helger.phase4.util.Phase4Exception- in case of error
-
getReceiverAPCertificate
@Nullable public X509Certificate getReceiverAPCertificate() throws com.helger.phase4.util.Phase4Exception- Specified by:
getReceiverAPCertificatein interfaceIAS4EndpointDetailProvider- Returns:
- The X509 AP Certificate of the receiver. May be
nullif it could not be acquired. - Throws:
com.helger.phase4.util.Phase4Exception- In case of an error in determining the certificate.
-
getReceiverAPEndpointURL
@Nonnull @Nonempty public String getReceiverAPEndpointURL() throws com.helger.phase4.util.Phase4Exception- Specified by:
getReceiverAPEndpointURLin interfaceIAS4EndpointDetailProvider- Returns:
- The AS4 endpoint URL of the receiver. May neither be
nullnor empty. - Throws:
com.helger.phase4.util.Phase4Exception- In case of an error in determining the endpoint URL.
-
toString
-
create
@Nonnull public static AS4EndpointDetailProviderPeppol create(@Nonnull com.helger.smpclient.peppol.SMPClientReadOnly aSMPClient) Create a newAS4EndpointDetailProviderPeppolbased on the provided SMP client.- Parameters:
aSMPClient- The SMP client to use. May not benull- Returns:
- Never
null. - Since:
- 2.8.1
-