/** This is an automatically generated code sample. 
To make this code sample work in your Oracle Cloud tenancy, 
please replace the values for any parameters whose current values do not fit
your use case (such as resource IDs, strings containing ‘EXAMPLE’ or ‘unique_id’, and 
boolean, number, and enum parameters with values not fitting your use case).
*/

import com.oracle.bmc.ConfigFileReader;
import com.oracle.bmc.auth.AuthenticationDetailsProvider;
import com.oracle.bmc.auth.ConfigFileAuthenticationDetailsProvider;
import com.oracle.bmc.dataintegration.DataIntegrationClient;
import com.oracle.bmc.dataintegration.model.*;
import com.oracle.bmc.dataintegration.requests.*;
import com.oracle.bmc.dataintegration.responses.*;
import java.math.BigDecimal;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Date;
import java.util.UUID;
import java.util.Arrays;


public class CreateEntityShapeExample {
    public static void main(String[] args) throws Exception {

        /**
         * Create a default authentication provider that uses the DEFAULT
         * profile in the configuration file.
         * Refer to <see href="https://docs.cloud.oracle.com/en-us/iaas/Content/API/Concepts/sdkconfig.htm#SDK_and_CLI_Configuration_File>the public documentation</see> on how to prepare a configuration file.
         */
        final ConfigFileReader.ConfigFile configFile = ConfigFileReader.parseDefault();
        final AuthenticationDetailsProvider provider = new ConfigFileAuthenticationDetailsProvider(configFile);

        /* Create a service client */
        DataIntegrationClient client = DataIntegrationClient.builder().build(provider);

        /* Create a request and dependent object(s). */
	CreateEntityShapeDetails createEntityShapeDetails = CreateEntityShapeFromObject.builder()
		.key("EXAMPLE-key-Value")
		.parentRef(ParentReference.builder()
			.parent("EXAMPLE-parent-Value")
			.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
		.name("EXAMPLE-name-Value")
		.description("EXAMPLE-description-Value")
		.externalKey("EXAMPLE-externalKey-Value")
		.shape(Shape.builder()
			.type(CompositeType.builder()
				.elements(new ArrayList<>(Arrays.asList(MacroField.builder()
						.expr(Expression.builder()
							.key("EXAMPLE-key-Value")
							.modelType("EXAMPLE-modelType-Value")
							.modelVersion("EXAMPLE-modelVersion-Value")
							.parentRef(ParentReference.builder()
								.parent("EXAMPLE-parent-Value")
								.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
							.exprString("EXAMPLE-exprString-Value")
							.configValues(ConfigValues.builder()
								.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
										{
											put("EXAMPLE_KEY_iiFOz",ConfigParameterValue.builder()
										.stringValue("EXAMPLE-stringValue-Value")
										.intValue(124)
										.objectValue("EXAMPLE-objectValue-Value")
										.refValue("EXAMPLE-refValue-Value")
										.parameterValue("EXAMPLE-parameterValue-Value")
										.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
										}
 									})
								.parentRef(ParentReference.builder()
									.parent("EXAMPLE-parent-Value")
									.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
							.objectStatus(885).build())
						.isUseSourceType(false)
						.useType(ConfiguredType.builder()
							.wrappedType("EXAMPLE-wrappedType-Value")
							.configValues(ConfigValues.builder()
								.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
										{
											put("EXAMPLE_KEY_1JBjS",ConfigParameterValue.builder()
										.stringValue("EXAMPLE-stringValue-Value")
										.intValue(337)
										.objectValue("EXAMPLE-objectValue-Value")
										.refValue("EXAMPLE-refValue-Value")
										.parameterValue("EXAMPLE-parameterValue-Value")
										.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
										}
 									})
								.parentRef(ParentReference.builder()
									.parent("EXAMPLE-parent-Value")
									.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
							.configDefinition(ConfigDefinition.builder()
								.key("EXAMPLE-key-Value")
								.modelType("EXAMPLE-modelType-Value")
								.modelVersion("EXAMPLE-modelVersion-Value")
								.parentRef(ParentReference.builder()
									.parent("EXAMPLE-parent-Value")
									.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
								.name("EXAMPLE-name-Value")
								.isContained(true)
								.objectStatus(768)
								.configParameterDefinitions(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterDefinition>() {
										{
											put("EXAMPLE_KEY_adQDX",ConfigParameterDefinition.builder()
										.parameterName("EXAMPLE-parameterName-Value")
										.description("EXAMPLE-description-Value")
										.defaultValue("EXAMPLE-defaultValue-Value")
										.classFieldName("EXAMPLE-classFieldName-Value")
										.isStatic(false)
										.isClassFieldValue(false).build());
										}
 									}).build())
							.key("EXAMPLE-key-Value")
							.modelVersion("EXAMPLE-modelVersion-Value")
							.parentRef(ParentReference.builder()
								.parent("EXAMPLE-parent-Value")
								.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
							.name("EXAMPLE-name-Value")
							.objectStatus(654)
							.description("EXAMPLE-description-Value").build())
						.labels(new ArrayList<>(Arrays.asList("EXAMPLE--Value")))
						.key("EXAMPLE-key-Value")
						.modelVersion("EXAMPLE-modelVersion-Value")
						.parentRef(ParentReference.builder()
							.parent("EXAMPLE-parent-Value")
							.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
						.configValues(ConfigValues.builder()
							.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
									{
										put("EXAMPLE_KEY_PIDhN",ConfigParameterValue.builder()
									.stringValue("EXAMPLE-stringValue-Value")
									.intValue(835)
									.objectValue("EXAMPLE-objectValue-Value")
									.refValue("EXAMPLE-refValue-Value")
									.parameterValue("EXAMPLE-parameterValue-Value")
									.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
									}
 								})
							.parentRef(ParentReference.builder()
								.parent("EXAMPLE-parent-Value")
								.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
						.objectStatus(52)
						.name("EXAMPLE-name-Value")
						.description("EXAMPLE-description-Value").build())))
				.configDefinition(ConfigDefinition.builder()
					.key("EXAMPLE-key-Value")
					.modelType("EXAMPLE-modelType-Value")
					.modelVersion("EXAMPLE-modelVersion-Value")
					.parentRef(ParentReference.builder()
						.parent("EXAMPLE-parent-Value")
						.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
					.name("EXAMPLE-name-Value")
					.isContained(false)
					.objectStatus(426)
					.configParameterDefinitions(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterDefinition>() {
							{
								put("EXAMPLE_KEY_jTQvy",ConfigParameterDefinition.builder()
							.parameterName("EXAMPLE-parameterName-Value")
							.description("EXAMPLE-description-Value")
							.defaultValue("EXAMPLE-defaultValue-Value")
							.classFieldName("EXAMPLE-classFieldName-Value")
							.isStatic(true)
							.isClassFieldValue(true).build());
							}
 						}).build())
				.key("EXAMPLE-key-Value")
				.modelVersion("EXAMPLE-modelVersion-Value")
				.parentRef(ParentReference.builder()
					.parent("EXAMPLE-parent-Value")
					.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
				.name("EXAMPLE-name-Value")
				.objectStatus(772)
				.description("EXAMPLE-description-Value").build())
			.key("EXAMPLE-key-Value")
			.modelVersion("EXAMPLE-modelVersion-Value")
			.parentRef(ParentReference.builder()
				.parent("EXAMPLE-parent-Value")
				.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
			.configValues(ConfigValues.builder()
				.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
						{
							put("EXAMPLE_KEY_asrXX",ConfigParameterValue.builder()
						.stringValue("EXAMPLE-stringValue-Value")
						.intValue(638)
						.objectValue("EXAMPLE-objectValue-Value")
						.refValue("EXAMPLE-refValue-Value")
						.parameterValue("EXAMPLE-parameterValue-Value")
						.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
						}
 					})
				.parentRef(ParentReference.builder()
					.parent("EXAMPLE-parent-Value")
					.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
			.objectStatus(854)
			.name("EXAMPLE-name-Value")
			.description("EXAMPLE-description-Value").build())
		.shapeId("ocid1.test.oc1..<unique_ID>EXAMPLE-shapeId-Value")
		.entityType(CreateEntityShapeFromObject.EntityType.Table)
		.otherTypeLabel("EXAMPLE-otherTypeLabel-Value")
		.uniqueKeys(new ArrayList<>(Arrays.asList(UniqueDataKey.builder()
				.key("EXAMPLE-key-Value")
				.modelVersion("EXAMPLE-modelVersion-Value")
				.parentRef(ParentReference.builder()
					.parent("EXAMPLE-parent-Value")
					.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
				.name("EXAMPLE-name-Value")
				.attributeRefs(new ArrayList<>(Arrays.asList(KeyAttribute.builder()
						.position(450)
						.shapeField(ShapeField.builder()
							.type("EXAMPLE-type-Value")
							.labels(new ArrayList<>(Arrays.asList("EXAMPLE--Value")))
							.nativeShapeField(NativeShapeField.builder()
								.name("EXAMPLE-name-Value")
								.modelType("EXAMPLE-modelType-Value")
								.type("EXAMPLE-type-Value")
								.configValues(ConfigValues.builder()
									.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
											{
												put("EXAMPLE_KEY_GFT2U",ConfigParameterValue.builder()
											.stringValue("EXAMPLE-stringValue-Value")
											.intValue(278)
											.objectValue("EXAMPLE-objectValue-Value")
											.refValue("EXAMPLE-refValue-Value")
											.parameterValue("EXAMPLE-parameterValue-Value")
											.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
											}
 										})
									.parentRef(ParentReference.builder()
										.parent("EXAMPLE-parent-Value")
										.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
								.position(648)
								.defaultValueString("EXAMPLE-defaultValueString-Value")
								.isMandatory(false).build())
							.key("EXAMPLE-key-Value")
							.modelVersion("EXAMPLE-modelVersion-Value")
							.parentRef(ParentReference.builder()
								.parent("EXAMPLE-parent-Value")
								.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
							.configValues(ConfigValues.builder()
								.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
										{
											put("EXAMPLE_KEY_gHvUf",ConfigParameterValue.builder()
										.stringValue("EXAMPLE-stringValue-Value")
										.intValue(327)
										.objectValue("EXAMPLE-objectValue-Value")
										.refValue("EXAMPLE-refValue-Value")
										.parameterValue("EXAMPLE-parameterValue-Value")
										.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
										}
 									})
								.parentRef(ParentReference.builder()
									.parent("EXAMPLE-parent-Value")
									.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
							.objectStatus(500)
							.name("EXAMPLE-name-Value")
							.description("EXAMPLE-description-Value").build())
						.attribute(ShapeField.builder()
							.type("EXAMPLE-type-Value")
							.labels(new ArrayList<>(Arrays.asList("EXAMPLE--Value")))
							.nativeShapeField(NativeShapeField.builder()
								.name("EXAMPLE-name-Value")
								.modelType("EXAMPLE-modelType-Value")
								.type("EXAMPLE-type-Value")
								.configValues(ConfigValues.builder()
									.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
											{
												put("EXAMPLE_KEY_G83MZ",ConfigParameterValue.builder()
											.stringValue("EXAMPLE-stringValue-Value")
											.intValue(811)
											.objectValue("EXAMPLE-objectValue-Value")
											.refValue("EXAMPLE-refValue-Value")
											.parameterValue("EXAMPLE-parameterValue-Value")
											.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
											}
 										})
									.parentRef(ParentReference.builder()
										.parent("EXAMPLE-parent-Value")
										.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
								.position(55)
								.defaultValueString("EXAMPLE-defaultValueString-Value")
								.isMandatory(false).build())
							.key("EXAMPLE-key-Value")
							.modelVersion("EXAMPLE-modelVersion-Value")
							.parentRef(ParentReference.builder()
								.parent("EXAMPLE-parent-Value")
								.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
							.configValues(ConfigValues.builder()
								.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
										{
											put("EXAMPLE_KEY_Ir8eB",ConfigParameterValue.builder()
										.stringValue("EXAMPLE-stringValue-Value")
										.intValue(720)
										.objectValue("EXAMPLE-objectValue-Value")
										.refValue("EXAMPLE-refValue-Value")
										.parameterValue("EXAMPLE-parameterValue-Value")
										.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
										}
 									})
								.parentRef(ParentReference.builder()
									.parent("EXAMPLE-parent-Value")
									.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
							.objectStatus(816)
							.name("EXAMPLE-name-Value")
							.description("EXAMPLE-description-Value").build()).build())))
				.objectStatus(340).build())))
		.foreignKeys(new ArrayList<>(Arrays.asList(ForeignKey.builder()
				.key("EXAMPLE-key-Value")
				.modelVersion("EXAMPLE-modelVersion-Value")
				.parentRef(ParentReference.builder()
					.parent("EXAMPLE-parent-Value")
					.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
				.name("EXAMPLE-name-Value")
				.attributeRefs(new ArrayList<>(Arrays.asList(KeyAttribute.builder()
						.position(37)
						.shapeField(ShapeField.builder()
							.type("EXAMPLE-type-Value")
							.labels(new ArrayList<>(Arrays.asList("EXAMPLE--Value")))
							.nativeShapeField(NativeShapeField.builder()
								.name("EXAMPLE-name-Value")
								.modelType("EXAMPLE-modelType-Value")
								.type("EXAMPLE-type-Value")
								.configValues(ConfigValues.builder()
									.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
											{
												put("EXAMPLE_KEY_w0h7p",ConfigParameterValue.builder()
											.stringValue("EXAMPLE-stringValue-Value")
											.intValue(720)
											.objectValue("EXAMPLE-objectValue-Value")
											.refValue("EXAMPLE-refValue-Value")
											.parameterValue("EXAMPLE-parameterValue-Value")
											.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
											}
 										})
									.parentRef(ParentReference.builder()
										.parent("EXAMPLE-parent-Value")
										.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
								.position(386)
								.defaultValueString("EXAMPLE-defaultValueString-Value")
								.isMandatory(true).build())
							.key("EXAMPLE-key-Value")
							.modelVersion("EXAMPLE-modelVersion-Value")
							.parentRef(ParentReference.builder()
								.parent("EXAMPLE-parent-Value")
								.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
							.configValues(ConfigValues.builder()
								.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
										{
											put("EXAMPLE_KEY_NRC3y",ConfigParameterValue.builder()
										.stringValue("EXAMPLE-stringValue-Value")
										.intValue(668)
										.objectValue("EXAMPLE-objectValue-Value")
										.refValue("EXAMPLE-refValue-Value")
										.parameterValue("EXAMPLE-parameterValue-Value")
										.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
										}
 									})
								.parentRef(ParentReference.builder()
									.parent("EXAMPLE-parent-Value")
									.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
							.objectStatus(385)
							.name("EXAMPLE-name-Value")
							.description("EXAMPLE-description-Value").build())
						.attribute(ShapeField.builder()
							.type("EXAMPLE-type-Value")
							.labels(new ArrayList<>(Arrays.asList("EXAMPLE--Value")))
							.nativeShapeField(NativeShapeField.builder()
								.name("EXAMPLE-name-Value")
								.modelType("EXAMPLE-modelType-Value")
								.type("EXAMPLE-type-Value")
								.configValues(ConfigValues.builder()
									.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
											{
												put("EXAMPLE_KEY_XQfHA",ConfigParameterValue.builder()
											.stringValue("EXAMPLE-stringValue-Value")
											.intValue(714)
											.objectValue("EXAMPLE-objectValue-Value")
											.refValue("EXAMPLE-refValue-Value")
											.parameterValue("EXAMPLE-parameterValue-Value")
											.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
											}
 										})
									.parentRef(ParentReference.builder()
										.parent("EXAMPLE-parent-Value")
										.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
								.position(472)
								.defaultValueString("EXAMPLE-defaultValueString-Value")
								.isMandatory(true).build())
							.key("EXAMPLE-key-Value")
							.modelVersion("EXAMPLE-modelVersion-Value")
							.parentRef(ParentReference.builder()
								.parent("EXAMPLE-parent-Value")
								.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
							.configValues(ConfigValues.builder()
								.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
										{
											put("EXAMPLE_KEY_Y6Cqy",ConfigParameterValue.builder()
										.stringValue("EXAMPLE-stringValue-Value")
										.intValue(496)
										.objectValue("EXAMPLE-objectValue-Value")
										.refValue("EXAMPLE-refValue-Value")
										.parameterValue("EXAMPLE-parameterValue-Value")
										.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
										}
 									})
								.parentRef(ParentReference.builder()
									.parent("EXAMPLE-parent-Value")
									.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
							.objectStatus(905)
							.name("EXAMPLE-name-Value")
							.description("EXAMPLE-description-Value").build()).build())))
				.updateRule(208)
				.deleteRule(750)
				.referenceUniqueKey(UniqueDataKey.builder()
					.key("EXAMPLE-key-Value")
					.modelVersion("EXAMPLE-modelVersion-Value")
					.parentRef(ParentReference.builder()
						.parent("EXAMPLE-parent-Value")
						.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
					.name("EXAMPLE-name-Value")
					.attributeRefs(new ArrayList<>(Arrays.asList(KeyAttribute.builder()
							.position(501)
							.shapeField(ShapeField.builder()
								.type("EXAMPLE-type-Value")
								.labels(new ArrayList<>(Arrays.asList("EXAMPLE--Value")))
								.nativeShapeField(NativeShapeField.builder()
									.name("EXAMPLE-name-Value")
									.modelType("EXAMPLE-modelType-Value")
									.type("EXAMPLE-type-Value")
									.configValues(ConfigValues.builder()
										.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
												{
													put("EXAMPLE_KEY_Ufmsr",ConfigParameterValue.builder()
												.stringValue("EXAMPLE-stringValue-Value")
												.intValue(721)
												.objectValue("EXAMPLE-objectValue-Value")
												.refValue("EXAMPLE-refValue-Value")
												.parameterValue("EXAMPLE-parameterValue-Value")
												.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
												}
 											})
										.parentRef(ParentReference.builder()
											.parent("EXAMPLE-parent-Value")
											.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
									.position(208)
									.defaultValueString("EXAMPLE-defaultValueString-Value")
									.isMandatory(true).build())
								.key("EXAMPLE-key-Value")
								.modelVersion("EXAMPLE-modelVersion-Value")
								.parentRef(ParentReference.builder()
									.parent("EXAMPLE-parent-Value")
									.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
								.configValues(ConfigValues.builder()
									.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
											{
												put("EXAMPLE_KEY_cujEf",ConfigParameterValue.builder()
											.stringValue("EXAMPLE-stringValue-Value")
											.intValue(437)
											.objectValue("EXAMPLE-objectValue-Value")
											.refValue("EXAMPLE-refValue-Value")
											.parameterValue("EXAMPLE-parameterValue-Value")
											.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
											}
 										})
									.parentRef(ParentReference.builder()
										.parent("EXAMPLE-parent-Value")
										.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
								.objectStatus(463)
								.name("EXAMPLE-name-Value")
								.description("EXAMPLE-description-Value").build())
							.attribute(ShapeField.builder()
								.type("EXAMPLE-type-Value")
								.labels(new ArrayList<>(Arrays.asList("EXAMPLE--Value")))
								.nativeShapeField(NativeShapeField.builder()
									.name("EXAMPLE-name-Value")
									.modelType("EXAMPLE-modelType-Value")
									.type("EXAMPLE-type-Value")
									.configValues(ConfigValues.builder()
										.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
												{
													put("EXAMPLE_KEY_68rHb",ConfigParameterValue.builder()
												.stringValue("EXAMPLE-stringValue-Value")
												.intValue(632)
												.objectValue("EXAMPLE-objectValue-Value")
												.refValue("EXAMPLE-refValue-Value")
												.parameterValue("EXAMPLE-parameterValue-Value")
												.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
												}
 											})
										.parentRef(ParentReference.builder()
											.parent("EXAMPLE-parent-Value")
											.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
									.position(191)
									.defaultValueString("EXAMPLE-defaultValueString-Value")
									.isMandatory(true).build())
								.key("EXAMPLE-key-Value")
								.modelVersion("EXAMPLE-modelVersion-Value")
								.parentRef(ParentReference.builder()
									.parent("EXAMPLE-parent-Value")
									.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build())
								.configValues(ConfigValues.builder()
									.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
											{
												put("EXAMPLE_KEY_rSiuY",ConfigParameterValue.builder()
											.stringValue("EXAMPLE-stringValue-Value")
											.intValue(650)
											.objectValue("EXAMPLE-objectValue-Value")
											.refValue("EXAMPLE-refValue-Value")
											.parameterValue("EXAMPLE-parameterValue-Value")
											.rootObjectValue("EXAMPLE-rootObjectValue-Value").build());
											}
 										})
									.parentRef(ParentReference.builder()
										.parent("EXAMPLE-parent-Value")
										.rootDocId("ocid1.test.oc1..<unique_ID>EXAMPLE-rootDocId-Value").build()).build())
								.objectStatus(973)
								.name("EXAMPLE-name-Value")
								.description("EXAMPLE-description-Value").build()).build())))
					.objectStatus(74).build())
				.objectStatus(133).build())))
		.resourceName("EXAMPLE-resourceName-Value")
		.dataFormat(DataFormat.builder()
			.formatAttribute(CsvFormatAttribute.builder()
				.encoding("EXAMPLE-encoding-Value")
				.escapeCharacter("EXAMPLE-escapeCharacter-Value")
				.delimiter("EXAMPLE-delimiter-Value")
				.quoteCharacter("EXAMPLE-quoteCharacter-Value")
				.hasHeader(true)
				.timestampFormat("EXAMPLE-timestampFormat-Value")
				.isFilePattern(true).build())
			.type(DataFormat.Type.Json)
			.compressionConfig(Compression.builder()
				.codec(Compression.Codec.Gzip).build()).build())
		.identifier("EXAMPLE-identifier-Value").build();

	CreateEntityShapeRequest createEntityShapeRequest = CreateEntityShapeRequest.builder()
		.workspaceId("ocid1.test.oc1..<unique_ID>EXAMPLE-workspaceId-Value")
		.connectionKey("EXAMPLE-connectionKey-Value")
		.schemaResourceName("EXAMPLE-schemaResourceName-Value")
		.createEntityShapeDetails(createEntityShapeDetails)
		.opcRequestId("OPNDMHNA1SVOBHMJPFXM<unique_ID>")
		.opcRetryToken("EXAMPLE-opcRetryToken-Value")
		.ifMatch("EXAMPLE-ifMatch-Value").build();

        /* Send request to the Client */
        CreateEntityShapeResponse response = client.createEntityShape(createEntityShapeRequest);
    }

    
}