All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.univocity.api.config.builders.PersistenceSetup Maven / Gradle / Ivy

/*******************************************************************************
 * Copyright (c) 2014 uniVocity Software Pty Ltd. All rights reserved.
 * This file is subject to the terms and conditions defined in file
 * 'LICENSE.txt', which is part of this source code package.
 ******************************************************************************/
package com.univocity.api.config.builders;

import com.univocity.api.config.*;
import com.univocity.api.engine.*;

/**
 * The PersistenceSetup is the base configuration used to determine how records mapped using an {@link EntityMapping} should be persisted.
 *
 * @see MetadataSettings
 * @see DataIntegrationEngine
 *
 * @author uniVocity Software Pty Ltd - [email protected]
 *
 */
public interface PersistenceSetup {
	/**
	 * Initializes persistence configuration options of an {@link EntityMapping}, that use uniVocity metadata tables.
	 * 
Through the usage of metadata, uniVocity is able to execute complex update operations when mapping data between entities. * @return the next step of this configuration: define how to remove records in the destination entity, with or without * the usage of metadata. */ public ExclusionWithMetadata usingMetadata(); /** * Initializes persistence configuration options of an {@link EntityMapping}, that do not use uniVocity metadata tables. *
Without metadata, uniVocity is only able to execute simple operations: * when mapping data between entities for a second time, it is unable to differentiate between new and old records. * You can either delete all records in the destination and insert the new mapped records back, * or updated and override all previously mapped records without inserting new ones. * * @return the next step of this configuration: define how to remove records in the destination entity, without * the usage of metadata. */ public ExclusionWithoutMetadata notUsingMetadata(); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy