
com.sap.cloud.sdk.s4hana.datamodel.odata.services.DefaultPurchaseContractService 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.purchasecontract.PurCtrAccountByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.purchasecontract.PurCtrAccountFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.purchasecontract.PurCtrAddressByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.purchasecontract.PurCtrAddressFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.purchasecontract.PurCtrPartnersByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.purchasecontract.PurCtrPartnersFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.purchasecontract.PurchaseContract;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.purchasecontract.PurchaseContractByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.purchasecontract.PurchaseContractCreateFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.purchasecontract.PurchaseContractFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.purchasecontract.PurchaseContractItemByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.purchasecontract.PurchaseContractItemFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.purchasecontract.batch.DefaultPurchaseContractServiceBatch;
/**
*
* This service enables you to read and create purchase contracts through an API call from a source system outside SAP
* S/4HANA Cloud.
*
*
*
* Reference: SAP
* API Business Hub
*
* Details:
*
*
* OData Service:
* API_PURCHASECONTRACT_PROCESS_SRV
*
*
* API Version:
* 1
*
*
* Communication Scenario:
* Distributed Manufacturing Integration (SAP_COM_0077), Purchase Contract Integration (SAP_COM_0101)
*
*
* Scope Items:
* Integration with SAP Distributed Manufacturing with SAP
* S/4HANA Cloud (1NX), Purchase Contract (BMD),
* Consumer and Customer Profiling (JC1),
* Consumable Purchasing (BNX),
* Service and Material Procurement - Project-Based Services
* (J13), Procurement of Direct Materials (J45)
*
*
* Authentication Methods:
* Basic, x509
*
*
*
*/
@Named( "com.sap.cloud.sdk.s4hana.datamodel.odata.services.DefaultPurchaseContractService" )
public class DefaultPurchaseContractService implements PurchaseContractService
{
@Nonnull
private final String servicePath;
/**
* Creates a service using {@link PurchaseContractService#DEFAULT_SERVICE_PATH} to send the requests.
*
*/
public DefaultPurchaseContractService()
{
servicePath = PurchaseContractService.DEFAULT_SERVICE_PATH;
}
/**
* Creates a service using the provided service path to send the requests.
*
* Used by the fluent {@link #withServicePath(String)} method.
*
*/
private DefaultPurchaseContractService( @Nonnull final String servicePath )
{
this.servicePath = servicePath;
}
@Override
@Nonnull
public DefaultPurchaseContractService withServicePath( @Nonnull final String servicePath )
{
return new DefaultPurchaseContractService(servicePath);
}
/**
* {@inheritDoc}
*
*/
@Override
@Nonnull
public DefaultPurchaseContractServiceBatch batch()
{
return new DefaultPurchaseContractServiceBatch(this);
}
@Override
@Nonnull
public PurchaseContractFluentHelper getAllPurchaseContract()
{
return new PurchaseContractFluentHelper(servicePath);
}
@Override
@Nonnull
public PurchaseContractByKeyFluentHelper getPurchaseContractByKey( final String purchaseContract )
{
return new PurchaseContractByKeyFluentHelper(servicePath, purchaseContract);
}
@Override
@Nonnull
public PurchaseContractCreateFluentHelper createPurchaseContract( @Nonnull final PurchaseContract purchaseContract )
{
return new PurchaseContractCreateFluentHelper(servicePath, purchaseContract);
}
@Override
@Nonnull
public PurchaseContractItemFluentHelper getAllPurchaseContractItem()
{
return new PurchaseContractItemFluentHelper(servicePath);
}
@Override
@Nonnull
public
PurchaseContractItemByKeyFluentHelper
getPurchaseContractItemByKey( final String purchaseContract, final String purchaseContractItem )
{
return new PurchaseContractItemByKeyFluentHelper(servicePath, purchaseContract, purchaseContractItem);
}
@Override
@Nonnull
public PurCtrAccountFluentHelper getAllPurCtrAccount()
{
return new PurCtrAccountFluentHelper(servicePath);
}
@Override
@Nonnull
public PurCtrAccountByKeyFluentHelper getPurCtrAccountByKey(
final String accountAssignment,
final String purchaseContractItem,
final String purchaseContract )
{
return new PurCtrAccountByKeyFluentHelper(
servicePath,
accountAssignment,
purchaseContractItem,
purchaseContract);
}
@Override
@Nonnull
public PurCtrAddressFluentHelper getAllPurCtrAddress()
{
return new PurCtrAddressFluentHelper(servicePath);
}
@Override
@Nonnull
public PurCtrAddressByKeyFluentHelper getPurCtrAddressByKey(
final String purchaseContract,
final String addressID,
final String purchaseContractItem )
{
return new PurCtrAddressByKeyFluentHelper(servicePath, purchaseContract, addressID, purchaseContractItem);
}
@Override
@Nonnull
public PurCtrPartnersFluentHelper getAllPurCtrPartners()
{
return new PurCtrPartnersFluentHelper(servicePath);
}
@Override
@Nonnull
public PurCtrPartnersByKeyFluentHelper getPurCtrPartnersByKey(
final String purchaseContract,
final String purchaseContractItem,
final String purchasingOrganization,
final String partnerFunction,
final String plant,
final String supplierSubrange,
final String partnerCounter )
{
return new PurCtrPartnersByKeyFluentHelper(
servicePath,
purchaseContract,
purchaseContractItem,
purchasingOrganization,
partnerFunction,
plant,
supplierSubrange,
partnerCounter);
}
}