package org.jboss.windup.rules.apps.javaee.model; import java.util.Map; import org.jboss.windup.graph.MapInAdjacentProperties; import org.jboss.windup.graph.model.WindupVertexFrame; import com.tinkerpop.blueprints.Direction; import com.tinkerpop.frames.Adjacency; import com.tinkerpop.frames.modules.typedgraph.TypeValue; /** * Contains metadata related to Hibernate Session Factories. * * @author <a href="mailto:jesse.sightler@gmail.com">Jesse Sightler</a> * */ @TypeValue(HibernateSessionFactoryModel.TYPE) public interface HibernateSessionFactoryModel extends WindupVertexFrame { String TYPE = "HibernateSessionFactory"; String DATASOURCE = "datasource"; /** * Contains a link back to the {@link HibernateConfigurationFileModel} containing these properties */ @Adjacency(label = HibernateConfigurationFileModel.HIBERNATE_SESSION_FACTORY, direction = Direction.IN) HibernateConfigurationFileModel getHibernateConfigurationFileModel(); /** * Contains a link back to the {@link DataSourceModel} */ @Adjacency(label = DATASOURCE, direction = Direction.OUT) public Iterable<DataSourceModel> getDataSources(); /** * Contains a link back to the {@link DataSourceModel} */ @Adjacency(label = DATASOURCE, direction = Direction.OUT) void addDataSource(DataSourceModel datasource); /** * Contains the hibernate session factories properties */ @MapInAdjacentProperties(label = "sessionFactoryProperties") Map<String, String> getSessionFactoryProperties(); /** * Contains the hibernate session factories properties */ @MapInAdjacentProperties(label = "sessionFactoryProperties") void setSessionFactoryProperties(Map<String, String> map); }