/* * JBoss, Home of Professional Open Source. * * See the LEGAL.txt file distributed with this work for information regarding copyright ownership and licensing. * * See the AUTHORS.txt file distributed with this work for a full listing of individual contributors. */ package org.teiid.designer.modelgenerator.salesforce.model; import org.eclipse.core.runtime.IProgressMonitor; import org.teiid.designer.modelgenerator.salesforce.connection.SalesforceConnection; /** * * Contains the metadata about the Salesforce Objects. * * * @since 8.0 */ public interface DataModel { /** * Gathers the metadata from the Salesforce system. * @param conn The connection the the salesforce instance * @throws Exception */ public abstract void load(SalesforceConnection conn, IProgressMonitor monitor) throws Exception; /** * Returns the list of objects in the Salesforce system. * @return */ public abstract Object[] getSalesforceObjects(); public abstract SalesforceObject getSalesforceObject(String name); public abstract boolean hasSelectedObjects(); public abstract void incrementSelectionCount(); public abstract void decrementSelectionCount(); }