package com.microsoft.bingads.v11.bulk.entities; import com.microsoft.bingads.v11.internal.bulk.Creator; import com.microsoft.bingads.v11.internal.bulk.entities.BulkEntityIdentifier; import com.microsoft.bingads.v11.internal.bulk.entities.SingleRecordBulkEntity; /** * Encapsulates the information and creators required for instantiation of blank * entities of various types * */ class EntityInfo { private Creator<SingleRecordBulkEntity> creator; private String deleteAllColumnName; private Creator<BulkEntityIdentifier> identifierCreator; /** * Initializes a new instance of the EntityInfo class. * * @param creator A function which creates a instance of the encapsulated * object */ public EntityInfo(Creator<SingleRecordBulkEntity> creator) { this(creator, null, null); } /** * Initializes a new instance of the EntityInfo class. * * @param creator A function which creates a instance of the encapsulated * object * @param deleteAllColumnName The name of the column which indicates whether * to delete all */ public EntityInfo(Creator<SingleRecordBulkEntity> creator, String deleteAllColumnName) { this(creator, deleteAllColumnName, null); } /** * Initializes a new instance of the EntityInfo class. * * @param creator A function which creates a instance of the encapsulated * object * @param deleteAllColumnName The name of the column which indicates whether * to delete all * @param identifierCreator A function which creates a instance of an * identifier for the encapsulated object */ public EntityInfo(Creator<SingleRecordBulkEntity> creator, String deleteAllColumnName, Creator<BulkEntityIdentifier> identifierCreator) { this.creator = creator; this.deleteAllColumnName = deleteAllColumnName; this.identifierCreator = identifierCreator; } public Creator<SingleRecordBulkEntity> getCreator() { return creator; } public void setCreator(Creator<SingleRecordBulkEntity> creator) { this.creator = creator; } public String getDeleteAllColumnName() { return deleteAllColumnName; } public void setDeleteAllColumnName(String deleteAllColumnName) { this.deleteAllColumnName = deleteAllColumnName; } public Creator<BulkEntityIdentifier> getIdentifierCreator() { return identifierCreator; } public void setIdentifierCreator(Creator<BulkEntityIdentifier> identifierCreator) { this.identifierCreator = identifierCreator; } }