/** 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 CreateDataFlowValidationExample {
    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). */
	CreateDataFlowValidationDetails createDataFlowValidationDetails = CreateDataFlowValidationDetails.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")
		.identifier("EXAMPLE-identifier-Value")
		.objectVersion(284)
		.nodes(new ArrayList<>(Arrays.asList(FlowNode.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")
				.description("EXAMPLE-description-Value")
				.inputLinks(new ArrayList<>(Arrays.asList(InputLink.builder()
						.fromLink("EXAMPLE-fromLink-Value")
						.fieldMap(RuleBasedFieldMap.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())
							.configValues(ConfigValues.builder()
								.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
										{
											put("EXAMPLE_KEY_XU4M5",ConfigParameterValue.builder()
										.stringValue("EXAMPLE-stringValue-Value")
										.intValue(336)
										.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())
							.mapType(RuleBasedFieldMap.MapType.Mapbyname)
							.fromPattern("EXAMPLE-fromPattern-Value")
							.toPattern("EXAMPLE-toPattern-Value")
							.isJavaRegexSyntax(true)
							.objectStatus(375)
							.fromRuleConfig(RuleTypeConfig.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())
								.scope("EXAMPLE-scope-Value")
								.scopeReference(ScopeReference.builder()
									.referenceObject("EXAMPLE-referenceObject-Value")
									.referenceType(ScopeReference.ReferenceType.DirectRef)
									.refObjectName("EXAMPLE-refObjectName-Value").build())
								.isOrderByRule(true)
								.projectionRules(new ArrayList<>(Arrays.asList(NameListRule.builder()
										.isSkipRemainingRulesOnMatch(true)
										.scope("EXAMPLE-scope-Value")
										.isCascade(true)
										.matchingStrategy(NameListRule.MatchingStrategy.NameOnly)
										.isCaseSensitive(false)
										.ruleType(NameListRule.RuleType.Exclude)
										.names(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())
										.isJavaRegexSyntax(false)
										.configValues(ConfigValues.builder()
											.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
													{
														put("EXAMPLE_KEY_0oaCp",ConfigParameterValue.builder()
													.stringValue("EXAMPLE-stringValue-Value")
													.intValue(368)
													.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(0)
										.description("EXAMPLE-description-Value").build())))
								.configValues(ConfigValues.builder()
									.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
											{
												put("EXAMPLE_KEY_VBCoX",ConfigParameterValue.builder()
											.stringValue("EXAMPLE-stringValue-Value")
											.intValue(322)
											.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(662).build())
							.toRuleConfig(RuleTypeConfig.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())
								.scope("EXAMPLE-scope-Value")
								.scopeReference(ScopeReference.builder()
									.referenceObject("EXAMPLE-referenceObject-Value")
									.referenceType(ScopeReference.ReferenceType.DirectRef)
									.refObjectName("EXAMPLE-refObjectName-Value").build())
								.isOrderByRule(true)
								.projectionRules(new ArrayList<>(Arrays.asList(TypeListRule.builder()
										.isSkipRemainingRulesOnMatch(false)
										.scope("EXAMPLE-scope-Value")
										.isCascade(false)
										.matchingStrategy(TypeListRule.MatchingStrategy.NameOnly)
										.isCaseSensitive(true)
										.ruleType(TypeListRule.RuleType.Exclude)
										.types(new ArrayList<>(Arrays.asList("EXAMPLE-types-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())
										.isJavaRegexSyntax(true)
										.configValues(ConfigValues.builder()
											.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
													{
														put("EXAMPLE_KEY_SxI9y",ConfigParameterValue.builder()
													.stringValue("EXAMPLE-stringValue-Value")
													.intValue(562)
													.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(384)
										.description("EXAMPLE-description-Value").build())))
								.configValues(ConfigValues.builder()
									.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
											{
												put("EXAMPLE_KEY_WlqpN",ConfigParameterValue.builder()
											.stringValue("EXAMPLE-stringValue-Value")
											.intValue(80)
											.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(952).build())
							.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())
						.objectStatus(955)
						.description("EXAMPLE-description-Value")
						.port("EXAMPLE-port-Value").build())))
				.outputLinks(new ArrayList<>(Arrays.asList(OutputLink.builder()
						.toLinks(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())
						.objectStatus(924)
						.description("EXAMPLE-description-Value")
						.port("EXAMPLE-port-Value").build())))
				.operator(ExpressionOperator.builder()
					.triggerRule(ExpressionOperator.TriggerRule.AllComplete)
					.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")
					.description("EXAMPLE-description-Value")
					.objectVersion(600)
					.inputPorts(new ArrayList<>(Arrays.asList(InputPort.builder()
							.portType(InputPort.PortType.Control)
							.fields(new ArrayList<>(Arrays.asList(FlowPort.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())
									.configValues(ConfigValues.builder()
										.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
												{
													put("EXAMPLE_KEY_3ERPN",ConfigParameterValue.builder()
												.stringValue("EXAMPLE-stringValue-Value")
												.intValue(660)
												.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(200)
									.name("EXAMPLE-name-Value")
									.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_GtE5y",ConfigParameterValue.builder()
										.stringValue("EXAMPLE-stringValue-Value")
										.intValue(190)
										.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(531)
							.name("EXAMPLE-name-Value")
							.description("EXAMPLE-description-Value").build())))
					.outputPorts(new ArrayList<>(Arrays.asList(DecisionOutputPort.builder()
							.portType(DecisionOutputPort.PortType.Control)
							.decisionOutputPortType(DecisionOutputPort.DecisionOutputPortType.EvalTrue)
							.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_vWD0U",ConfigParameterValue.builder()
										.stringValue("EXAMPLE-stringValue-Value")
										.intValue(339)
										.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(536)
							.name("EXAMPLE-name-Value")
							.description("EXAMPLE-description-Value").build())))
					.objectStatus(398)
					.identifier("EXAMPLE-identifier-Value")
					.parameters(new ArrayList<>(Arrays.asList(Parameter.builder()
							.type("EXAMPLE-type-Value")
							.defaultValue("EXAMPLE-defaultValue-Value")
							.rootObjectDefaultValue("EXAMPLE-rootObjectDefaultValue-Value")
							.isInput(true)
							.isOutput(false)
							.outputAggregationType(Parameter.OutputAggregationType.Max)
							.typeName("EXAMPLE-typeName-Value")
							.usedFor("EXAMPLE-usedFor-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_ANbqv",ConfigParameterValue.builder()
										.stringValue("EXAMPLE-stringValue-Value")
										.intValue(751)
										.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(111)
							.name("EXAMPLE-name-Value")
							.description("EXAMPLE-description-Value").build())))
					.opConfigValues(ConfigValues.builder()
						.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
								{
									put("EXAMPLE_KEY_FTosD",ConfigParameterValue.builder()
								.stringValue("EXAMPLE-stringValue-Value")
								.intValue(503)
								.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()).build())
				.uiProperties(UIProperties.builder()
					.coordinateX(new BigDecimal("2548.1106"))
					.coordinateY(new BigDecimal("9179.243")).build())
				.objectStatus(728).build())))
		.parameters(new ArrayList<>(Arrays.asList(Parameter.builder()
				.type("EXAMPLE-type-Value")
				.defaultValue("EXAMPLE-defaultValue-Value")
				.rootObjectDefaultValue("EXAMPLE-rootObjectDefaultValue-Value")
				.isInput(true)
				.isOutput(true)
				.outputAggregationType(Parameter.OutputAggregationType.Sum)
				.typeName("EXAMPLE-typeName-Value")
				.usedFor("EXAMPLE-usedFor-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_yMVJ4",ConfigParameterValue.builder()
							.stringValue("EXAMPLE-stringValue-Value")
							.intValue(261)
							.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(746)
				.name("EXAMPLE-name-Value")
				.description("EXAMPLE-description-Value").build())))
		.description("EXAMPLE-description-Value")
		.flowConfigValues(ConfigValues.builder()
			.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
					{
						put("EXAMPLE_KEY_63fxm",ConfigParameterValue.builder()
					.stringValue("EXAMPLE-stringValue-Value")
					.intValue(88)
					.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(380)
		.metadata(ObjectMetadata.builder()
			.createdBy("EXAMPLE-createdBy-Value")
			.createdByName("EXAMPLE-createdByName-Value")
			.updatedBy("EXAMPLE-updatedBy-Value")
			.updatedByName("EXAMPLE-updatedByName-Value")
			.timeCreated(new Date("Thu Nov 21 10:44:39 UTC 2041"))
			.timeUpdated(new Date("Thu Aug 22 18:56:53 UTC 2002"))
			.aggregatorKey("EXAMPLE-aggregatorKey-Value")
			.aggregator(AggregatorSummary.builder()
				.type("EXAMPLE-type-Value")
				.key("EXAMPLE-key-Value")
				.name("EXAMPLE-name-Value")
				.identifier("EXAMPLE-identifier-Value")
				.description("EXAMPLE-description-Value").build())
			.identifierPath("EXAMPLE-identifierPath-Value")
			.infoFields(new HashMap<java.lang.String, java.lang.String>() {
					{
						put("EXAMPLE_KEY_TsCxz","EXAMPLE_VALUE_u0rq6iLSnlnqJ4y55dGh");
					}
 				})
			.registryVersion(411)
			.labels(new ArrayList<>(Arrays.asList("EXAMPLE--Value")))
			.isFavorite(false)
			.countStatistics(CountStatistic.builder()
				.objectTypeCountList(new ArrayList<>(Arrays.asList(CountStatisticSummary.builder()
						.objectType(CountStatisticSummary.ObjectType.Folder)
						.objectCount(562L).build()))).build()).build())
		.keyMap(new HashMap<java.lang.String, java.lang.String>() {
				{
					put("EXAMPLE_KEY_kccVN","EXAMPLE_VALUE_lWPmNuTW63SYx2KbXKZL");
				}
 			})
		.typedObjectMap(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.TypedObjectWrapper>() {
				{
					put("EXAMPLE_KEY_BJwh2",TypedObjectWrapper.builder()
				.typedObject(InputField.builder()
					.type(ConfiguredType.builder()
						.wrappedType("EXAMPLE-wrappedType-Value")
						.configValues(ConfigValues.builder()
							.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
									{
										put("EXAMPLE_KEY_bAXF3",ConfigParameterValue.builder()
									.stringValue("EXAMPLE-stringValue-Value")
									.intValue(243)
									.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(97)
							.configParameterDefinitions(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterDefinition>() {
									{
										put("EXAMPLE_KEY_yEj3T",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(750)
						.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_LvC5r",ConfigParameterValue.builder()
								.stringValue("EXAMPLE-stringValue-Value")
								.intValue(795)
								.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(434)
					.name("EXAMPLE-name-Value")
					.description("EXAMPLE-description-Value").build()).build());
				}
 			})
		.targetFieldMapSummary(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.FieldMapWrapper>() {
				{
					put("EXAMPLE_KEY_FuDZo",FieldMapWrapper.builder()
				.fieldMap(RuleBasedFieldMap.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())
					.configValues(ConfigValues.builder()
						.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
								{
									put("EXAMPLE_KEY_eWXb0",ConfigParameterValue.builder()
								.stringValue("EXAMPLE-stringValue-Value")
								.intValue(636)
								.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())
					.mapType(RuleBasedFieldMap.MapType.Mapbyname)
					.fromPattern("EXAMPLE-fromPattern-Value")
					.toPattern("EXAMPLE-toPattern-Value")
					.isJavaRegexSyntax(false)
					.objectStatus(757)
					.fromRuleConfig(RuleTypeConfig.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())
						.scope("EXAMPLE-scope-Value")
						.scopeReference(ScopeReference.builder()
							.referenceObject("EXAMPLE-referenceObject-Value")
							.referenceType(ScopeReference.ReferenceType.DirectRef)
							.refObjectName("EXAMPLE-refObjectName-Value").build())
						.isOrderByRule(true)
						.projectionRules(new ArrayList<>(Arrays.asList(TypeListRule.builder()
								.isSkipRemainingRulesOnMatch(true)
								.scope("EXAMPLE-scope-Value")
								.isCascade(false)
								.matchingStrategy(TypeListRule.MatchingStrategy.NameOrTags)
								.isCaseSensitive(false)
								.ruleType(TypeListRule.RuleType.Exclude)
								.types(new ArrayList<>(Arrays.asList("EXAMPLE-types-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())
								.isJavaRegexSyntax(false)
								.configValues(ConfigValues.builder()
									.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
											{
												put("EXAMPLE_KEY_1VtnJ",ConfigParameterValue.builder()
											.stringValue("EXAMPLE-stringValue-Value")
											.intValue(924)
											.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(194)
								.description("EXAMPLE-description-Value").build())))
						.configValues(ConfigValues.builder()
							.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
									{
										put("EXAMPLE_KEY_1NhrX",ConfigParameterValue.builder()
									.stringValue("EXAMPLE-stringValue-Value")
									.intValue(539)
									.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(980).build())
					.toRuleConfig(RuleTypeConfig.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())
						.scope("EXAMPLE-scope-Value")
						.scopeReference(ScopeReference.builder()
							.referenceObject("EXAMPLE-referenceObject-Value")
							.referenceType(ScopeReference.ReferenceType.OciFunctionInputShape)
							.refObjectName("EXAMPLE-refObjectName-Value").build())
						.isOrderByRule(false)
						.projectionRules(new ArrayList<>(Arrays.asList(TypeListRule.builder()
								.isSkipRemainingRulesOnMatch(false)
								.scope("EXAMPLE-scope-Value")
								.isCascade(true)
								.matchingStrategy(TypeListRule.MatchingStrategy.NameOrTags)
								.isCaseSensitive(true)
								.ruleType(TypeListRule.RuleType.Include)
								.types(new ArrayList<>(Arrays.asList("EXAMPLE-types-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())
								.isJavaRegexSyntax(false)
								.configValues(ConfigValues.builder()
									.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
											{
												put("EXAMPLE_KEY_dpdsI",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(173)
								.description("EXAMPLE-description-Value").build())))
						.configValues(ConfigValues.builder()
							.configParamValues(new HashMap<java.lang.String, com.oracle.bmc.dataintegration.model.ConfigParameterValue>() {
									{
										put("EXAMPLE_KEY_micC4",ConfigParameterValue.builder()
									.stringValue("EXAMPLE-stringValue-Value")
									.intValue(490)
									.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(187).build())
					.description("EXAMPLE-description-Value").build()).build());
				}
 			}).build();

	CreateDataFlowValidationRequest createDataFlowValidationRequest = CreateDataFlowValidationRequest.builder()
		.workspaceId("ocid1.test.oc1..<unique_ID>EXAMPLE-workspaceId-Value")
		.createDataFlowValidationDetails(createDataFlowValidationDetails)
		.opcRequestId("GT0DO769HHJQI2ZSNQNS<unique_ID>")
		.opcRetryToken("EXAMPLE-opcRetryToken-Value").build();

        /* Send request to the Client */
        CreateDataFlowValidationResponse response = client.createDataFlowValidation(createDataFlowValidationRequest);
    }

    
}