
com.sap.cloud.sdk.s4hana.datamodel.odata.services.DefaultLegalDocumentService Maven / Gradle / Ivy
/*
* Copyright (c) 2019 SAP SE or an SAP affiliate company. All rights reserved.
*/
package com.sap.cloud.sdk.s4hana.datamodel.odata.services;
import java.util.UUID;
import javax.annotation.Nonnull;
import javax.inject.Named;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.legaldocument.LegalDocument;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.legaldocument.LegalDocumentByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.legaldocument.LegalDocumentCreateFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.legaldocument.LegalDocumentFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.legaldocument.LglDocStamp;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.legaldocument.LglDocStampByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.legaldocument.LglDocStampCreateFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.legaldocument.LglDocStampFluentHelper;
/**
*
* This service enables you to read and create Legal Document with the data provided in a payload, in an API call. It is
* based on the OData protocol, and can be consumed in Integration scenarios or other user interfaces.
*
*
*
* Reference: SAP
* API Business Hub
*
* Details:
*
*
* OData Service:
* API_LEGAL_DOCUMENT_SRV
*
*
* API Version:
* 1
*
*
* Communication Scenario:
* Legal Document Integration (SAP_COM_0178)
*
*
* Scope Items:
* SAP S/4HANA for Legal Content (1XV)
*
*
* Authentication Methods:
* Basic, x509
*
*
*
*/
@Named( "com.sap.cloud.sdk.s4hana.datamodel.odata.services.DefaultLegalDocumentService" )
public class DefaultLegalDocumentService implements LegalDocumentService
{
@Nonnull
private final String servicePath;
/**
* Creates a service using {@link LegalDocumentService#DEFAULT_SERVICE_PATH} to send the requests.
*
*/
public DefaultLegalDocumentService()
{
servicePath = LegalDocumentService.DEFAULT_SERVICE_PATH;
}
/**
* Creates a service using the provided service path to send the requests.
*
* Used by the fluent {@link #withServicePath(String)} method.
*
*/
private DefaultLegalDocumentService( @Nonnull final String servicePath )
{
this.servicePath = servicePath;
}
@Override
@Nonnull
public DefaultLegalDocumentService withServicePath( @Nonnull final String servicePath )
{
return new DefaultLegalDocumentService(servicePath);
}
@Override
@Nonnull
public LegalDocumentFluentHelper getAllLegalDocument()
{
return new LegalDocumentFluentHelper(servicePath);
}
@Override
@Nonnull
public LegalDocumentByKeyFluentHelper getLegalDocumentByKey( final UUID lglCntntMDocumentUUID )
{
return new LegalDocumentByKeyFluentHelper(servicePath, lglCntntMDocumentUUID);
}
@Override
@Nonnull
public LegalDocumentCreateFluentHelper createLegalDocument( @Nonnull final LegalDocument legalDocument )
{
return new LegalDocumentCreateFluentHelper(servicePath, legalDocument);
}
@Override
@Nonnull
public LglDocStampFluentHelper getAllLglDocStamp()
{
return new LglDocStampFluentHelper(servicePath);
}
@Override
@Nonnull
public LglDocStampByKeyFluentHelper getLglDocStampByKey( final UUID lglCntntMDocumentStampUUID )
{
return new LglDocStampByKeyFluentHelper(servicePath, lglCntntMDocumentStampUUID);
}
@Override
@Nonnull
public LglDocStampCreateFluentHelper createLglDocStamp( @Nonnull final LglDocStamp lglDocStamp )
{
return new LglDocStampCreateFluentHelper(servicePath, lglDocStamp);
}
}