
com.sap.cloud.sdk.s4hana.datamodel.odata.services.DefaultDeliveryDocumentWithCreditBlocksService 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 javax.annotation.Nonnull;
import javax.inject.Named;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.deliverydocumentwithcreditblocks.CheckCreditBlockFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.deliverydocumentwithcreditblocks.CreditBlockedDeliveryDocByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.deliverydocumentwithcreditblocks.CreditBlockedDeliveryDocFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.deliverydocumentwithcreditblocks.RejectCreditBlockFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.deliverydocumentwithcreditblocks.ReleaseCreditBlockFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.deliverydocumentwithcreditblocks.SalesDocumentRjcnReasonByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.deliverydocumentwithcreditblocks.SalesDocumentRjcnReasonFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.deliverydocumentwithcreditblocks.batch.DefaultDeliveryDocumentWithCreditBlocksServiceBatch;
/**
*
* This synchronous inbound service enables you to read delivery documents that contain credit blocks, and check,
* release and reject the blocked delivery documents. It is based on the OData protocol and can be consumed in Fiori
* apps and on other user interfaces.
*
*
*
* Reference: SAP
* API Business Hub
*
* Details:
*
*
* OData Service:
* API_DEL_DOC_WITH_CREDIT_BLOCK
*
*
* API Version:
* 1
*
*
* Communication Scenario:
* Sales Credit Management Integration (SAP_COM_0325)
*
*
* Scope Items:
* Basic Credit Management (BD6)
*
*
* Authentication Methods:
* Basic, x509, OAuth2
*
*
*
*/
@Named( "com.sap.cloud.sdk.s4hana.datamodel.odata.services.DefaultDeliveryDocumentWithCreditBlocksService" )
public class DefaultDeliveryDocumentWithCreditBlocksService implements DeliveryDocumentWithCreditBlocksService
{
@Nonnull
private final String servicePath;
/**
* Creates a service using {@link DeliveryDocumentWithCreditBlocksService#DEFAULT_SERVICE_PATH} to send the
* requests.
*
*/
public DefaultDeliveryDocumentWithCreditBlocksService()
{
servicePath = DeliveryDocumentWithCreditBlocksService.DEFAULT_SERVICE_PATH;
}
/**
* Creates a service using the provided service path to send the requests.
*
* Used by the fluent {@link #withServicePath(String)} method.
*
*/
private DefaultDeliveryDocumentWithCreditBlocksService( @Nonnull final String servicePath )
{
this.servicePath = servicePath;
}
@Override
@Nonnull
public DefaultDeliveryDocumentWithCreditBlocksService withServicePath( @Nonnull final String servicePath )
{
return new DefaultDeliveryDocumentWithCreditBlocksService(servicePath);
}
/**
* {@inheritDoc}
*
*/
@Override
@Nonnull
public DefaultDeliveryDocumentWithCreditBlocksServiceBatch batch()
{
return new DefaultDeliveryDocumentWithCreditBlocksServiceBatch(this);
}
@Override
@Nonnull
public CreditBlockedDeliveryDocFluentHelper getAllCreditBlockedDeliveryDoc()
{
return new CreditBlockedDeliveryDocFluentHelper(servicePath);
}
@Override
@Nonnull
public CreditBlockedDeliveryDocByKeyFluentHelper getCreditBlockedDeliveryDocByKey( final String deliveryDocument )
{
return new CreditBlockedDeliveryDocByKeyFluentHelper(servicePath, deliveryDocument);
}
@Override
@Nonnull
public SalesDocumentRjcnReasonFluentHelper getAllSalesDocumentRjcnReason()
{
return new SalesDocumentRjcnReasonFluentHelper(servicePath);
}
@Override
@Nonnull
public SalesDocumentRjcnReasonByKeyFluentHelper getSalesDocumentRjcnReasonByKey(
final String salesDocumentRjcnReason )
{
return new SalesDocumentRjcnReasonByKeyFluentHelper(servicePath, salesDocumentRjcnReason);
}
@Override
@Nonnull
public
CheckCreditBlockFluentHelper
checkCreditBlock( final String deliveryDocument, final String sDDocumentCategory )
{
return new CheckCreditBlockFluentHelper(servicePath, deliveryDocument, sDDocumentCategory);
}
@Override
@Nonnull
public RejectCreditBlockFluentHelper rejectCreditBlock(
final String deliveryDocument,
final String salesDocumentRjcnReason,
final String sDDocumentCategory )
{
return new RejectCreditBlockFluentHelper(
servicePath,
deliveryDocument,
salesDocumentRjcnReason,
sDDocumentCategory);
}
@Override
@Nonnull
public
ReleaseCreditBlockFluentHelper
releaseCreditBlock( final String sDDocumentCategory, final String deliveryDocument )
{
return new ReleaseCreditBlockFluentHelper(servicePath, sDDocumentCategory, deliveryDocument);
}
}