
com.sap.cloud.sdk.s4hana.datamodel.odata.services.DefaultWarehouseResourceService 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.warehouseresource.LogoffFromWarehouseResourceFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.warehouseresource.LogonToWarehouseResourceFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.warehouseresource.WarehouseResource;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.warehouseresource.WarehouseResourceByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.warehouseresource.WarehouseResourceCreateFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.warehouseresource.WarehouseResourceDeleteFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.warehouseresource.WarehouseResourceFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.warehouseresource.batch.DefaultWarehouseResourceServiceBatch;
/**
*
* You can use this service to integrate external applications with warehouse resources in SAP S/4HANA Cloud. In every
* API call, you can make use of the following operations: - You can retrieve warehouse resources. Apply any of the
* filters provided or retrieve all existing data. - You can create and delete warehouse resources. - You can update
* existing warehouse resources (log on, log off)..
*
*
*
* Reference: SAP
* API Business Hub
*
* Details:
*
*
* OData Service:
* API_WAREHOUSE_RESOURCE
*
*
* API Version:
* 1
*
*
* Communication Scenario:
* Warehousing - Process Warehouse Task Integration (SAP_COM_0353)
*
*
* Scope Items:
* Resource Management in Warehousing (3W0)
*
*
* Authentication Methods:
* Basic, x509, OAuth2
*
*
* Business Object:
* WarehouseResource
*
*
*
*/
@Named( "com.sap.cloud.sdk.s4hana.datamodel.odata.services.DefaultWarehouseResourceService" )
public class DefaultWarehouseResourceService implements WarehouseResourceService
{
@Nonnull
private final String servicePath;
/**
* Creates a service using {@link WarehouseResourceService#DEFAULT_SERVICE_PATH} to send the requests.
*
*/
public DefaultWarehouseResourceService()
{
servicePath = WarehouseResourceService.DEFAULT_SERVICE_PATH;
}
/**
* Creates a service using the provided service path to send the requests.
*
* Used by the fluent {@link #withServicePath(String)} method.
*
*/
private DefaultWarehouseResourceService( @Nonnull final String servicePath )
{
this.servicePath = servicePath;
}
@Override
@Nonnull
public DefaultWarehouseResourceService withServicePath( @Nonnull final String servicePath )
{
return new DefaultWarehouseResourceService(servicePath);
}
/**
* {@inheritDoc}
*
*/
@Override
@Nonnull
public DefaultWarehouseResourceServiceBatch batch()
{
return new DefaultWarehouseResourceServiceBatch(this);
}
@Override
@Nonnull
public WarehouseResourceFluentHelper getAllWarehouseResource()
{
return new WarehouseResourceFluentHelper(servicePath);
}
@Override
@Nonnull
public
WarehouseResourceByKeyFluentHelper
getWarehouseResourceByKey( final String warehouse, final String warehouseResource )
{
return new WarehouseResourceByKeyFluentHelper(servicePath, warehouse, warehouseResource);
}
@Override
@Nonnull
public WarehouseResourceCreateFluentHelper createWarehouseResource(
@Nonnull final WarehouseResource warehouseResource )
{
return new WarehouseResourceCreateFluentHelper(servicePath, warehouseResource);
}
@Override
@Nonnull
public WarehouseResourceDeleteFluentHelper deleteWarehouseResource(
@Nonnull final WarehouseResource warehouseResource )
{
return new WarehouseResourceDeleteFluentHelper(servicePath, warehouseResource);
}
@Override
@Nonnull
public
LogoffFromWarehouseResourceFluentHelper
logoffFromWarehouseResource( final String warehouse, final String warehouseResource )
{
return new LogoffFromWarehouseResourceFluentHelper(servicePath, warehouse, warehouseResource);
}
@Override
@Nonnull
public
LogonToWarehouseResourceFluentHelper
logonToWarehouseResource( final String warehouse, final String warehouseResource )
{
return new LogonToWarehouseResourceFluentHelper(servicePath, warehouse, warehouseResource);
}
}