
com.sap.cloud.sdk.s4hana.datamodel.odata.services.DefaultEnterpriseProjectService 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.enterpriseproject.EntProjectElementJVA;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EntProjectElementJVAByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EntProjectElementJVAFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EntProjectElementJVAUpdateFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProject;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectCreateFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectDeleteFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectElement;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectElementByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectElementCreateFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectElementDeleteFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectElementFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectElementUpdateFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectJVA;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectJVAByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectJVAFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectJVAUpdateFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.EnterpriseProjectUpdateFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.SetProcessingStatusFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.SetProjElemProcessingStatusFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.enterpriseproject.batch.DefaultEnterpriseProjectServiceBatch;
/**
*
* This service enables you to read, create, update and delete the project definition and to read the project elements
* of enterprise projects.
*
*
*
* Reference: SAP
* API Business Hub
*
* Details:
*
*
* OData Service:
* API_ENTERPRISE_PROJECT_SRV
*
*
* API Version:
* 1
*
*
* Communication Scenario:
* Enterprise Project - Create, Read, Update, Delete Integration (SAP_COM_0308)
*
*
* Scope Items:
* Project Financial Control (1NT),
* Project Review (1YF)
*
*
* Authentication Methods:
* Basic, x509
*
*
*
*/
@Named( "com.sap.cloud.sdk.s4hana.datamodel.odata.services.DefaultEnterpriseProjectService" )
public class DefaultEnterpriseProjectService implements EnterpriseProjectService
{
@Nonnull
private final String servicePath;
/**
* Creates a service using {@link EnterpriseProjectService#DEFAULT_SERVICE_PATH} to send the requests.
*
*/
public DefaultEnterpriseProjectService()
{
servicePath = EnterpriseProjectService.DEFAULT_SERVICE_PATH;
}
/**
* Creates a service using the provided service path to send the requests.
*
* Used by the fluent {@link #withServicePath(String)} method.
*
*/
private DefaultEnterpriseProjectService( @Nonnull final String servicePath )
{
this.servicePath = servicePath;
}
@Override
@Nonnull
public DefaultEnterpriseProjectService withServicePath( @Nonnull final String servicePath )
{
return new DefaultEnterpriseProjectService(servicePath);
}
/**
* {@inheritDoc}
*
*/
@Override
@Nonnull
public DefaultEnterpriseProjectServiceBatch batch()
{
return new DefaultEnterpriseProjectServiceBatch(this);
}
@Override
@Nonnull
public EnterpriseProjectFluentHelper getAllEnterpriseProject()
{
return new EnterpriseProjectFluentHelper(servicePath);
}
@Override
@Nonnull
public EnterpriseProjectByKeyFluentHelper getEnterpriseProjectByKey( final UUID projectUUID )
{
return new EnterpriseProjectByKeyFluentHelper(servicePath, projectUUID);
}
@Override
@Nonnull
public EnterpriseProjectCreateFluentHelper createEnterpriseProject(
@Nonnull final EnterpriseProject enterpriseProject )
{
return new EnterpriseProjectCreateFluentHelper(servicePath, enterpriseProject);
}
@Override
@Nonnull
public EnterpriseProjectUpdateFluentHelper updateEnterpriseProject(
@Nonnull final EnterpriseProject enterpriseProject )
{
return new EnterpriseProjectUpdateFluentHelper(servicePath, enterpriseProject);
}
@Override
@Nonnull
public EnterpriseProjectDeleteFluentHelper deleteEnterpriseProject(
@Nonnull final EnterpriseProject enterpriseProject )
{
return new EnterpriseProjectDeleteFluentHelper(servicePath, enterpriseProject);
}
@Override
@Nonnull
public EnterpriseProjectElementFluentHelper getAllEnterpriseProjectElement()
{
return new EnterpriseProjectElementFluentHelper(servicePath);
}
@Override
@Nonnull
public EnterpriseProjectElementByKeyFluentHelper getEnterpriseProjectElementByKey( final UUID projectElementUUID )
{
return new EnterpriseProjectElementByKeyFluentHelper(servicePath, projectElementUUID);
}
@Override
@Nonnull
public EnterpriseProjectElementCreateFluentHelper createEnterpriseProjectElement(
@Nonnull final EnterpriseProjectElement enterpriseProjectElement )
{
return new EnterpriseProjectElementCreateFluentHelper(servicePath, enterpriseProjectElement);
}
@Override
@Nonnull
public EnterpriseProjectElementUpdateFluentHelper updateEnterpriseProjectElement(
@Nonnull final EnterpriseProjectElement enterpriseProjectElement )
{
return new EnterpriseProjectElementUpdateFluentHelper(servicePath, enterpriseProjectElement);
}
@Override
@Nonnull
public EnterpriseProjectElementDeleteFluentHelper deleteEnterpriseProjectElement(
@Nonnull final EnterpriseProjectElement enterpriseProjectElement )
{
return new EnterpriseProjectElementDeleteFluentHelper(servicePath, enterpriseProjectElement);
}
@Override
@Nonnull
public EnterpriseProjectJVAFluentHelper getAllEnterpriseProjectJVA()
{
return new EnterpriseProjectJVAFluentHelper(servicePath);
}
@Override
@Nonnull
public EnterpriseProjectJVAByKeyFluentHelper getEnterpriseProjectJVAByKey( final UUID projectUUID )
{
return new EnterpriseProjectJVAByKeyFluentHelper(servicePath, projectUUID);
}
@Override
@Nonnull
public EnterpriseProjectJVAUpdateFluentHelper updateEnterpriseProjectJVA(
@Nonnull final EnterpriseProjectJVA enterpriseProjectJVA )
{
return new EnterpriseProjectJVAUpdateFluentHelper(servicePath, enterpriseProjectJVA);
}
@Override
@Nonnull
public EntProjectElementJVAFluentHelper getAllEntProjectElementJVA()
{
return new EntProjectElementJVAFluentHelper(servicePath);
}
@Override
@Nonnull
public EntProjectElementJVAByKeyFluentHelper getEntProjectElementJVAByKey( final UUID projectElementUUID )
{
return new EntProjectElementJVAByKeyFluentHelper(servicePath, projectElementUUID);
}
@Override
@Nonnull
public EntProjectElementJVAUpdateFluentHelper updateEntProjectElementJVA(
@Nonnull final EntProjectElementJVA entProjectElementJVA )
{
return new EntProjectElementJVAUpdateFluentHelper(servicePath, entProjectElementJVA);
}
@Override
@Nonnull
public SetProcessingStatusFluentHelper setProcessingStatus( final UUID projectUUID, final String processingStatus )
{
return new SetProcessingStatusFluentHelper(servicePath, projectUUID, processingStatus);
}
@Override
@Nonnull
public
SetProjElemProcessingStatusFluentHelper
setProjElemProcessingStatus( final UUID projectElementUUID, final String processingStatus )
{
return new SetProjElemProcessingStatusFluentHelper(servicePath, projectElementUUID, processingStatus);
}
}