todoproject.java
来自「eclipse开发笔记」· Java 代码 · 共 349 行
JAVA
349 行
package rcpdev.todo.persistence.core.project;
import oracle.toplink.descriptors.ClassDescriptor;
import oracle.toplink.descriptors.RelationalDescriptor;
import oracle.toplink.mappings.DirectToFieldMapping;
import oracle.toplink.mappings.OneToManyMapping;
import oracle.toplink.mappings.OneToOneMapping;
import oracle.toplink.sequencing.TableSequence;
import oracle.toplink.sessions.DatabaseLogin;
import rcpdev.todo.persistence.Activator;
import rcpdev.todo.persistence.preferences.PreferenceConstants;
/**
* This class was generated by the TopLink project class generator. It stores
* the meta-data (descriptors) that define the TopLink mappings. ## Oracle
* TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118) ##
*
* @see oracle.toplink.tools.workbench.ProjectClassGenerator
*/
public class TodoProject extends oracle.toplink.sessions.Project {
public TodoProject() {
setName("todo");
applyLogin();
addDescriptor(buildTodoItemDescriptor());
addDescriptor(buildSeriesInfoDescriptor());
addDescriptor(buildTodoSeriesDescriptor());
addDescriptor(buildDayInfoDescriptor());
addDescriptor(buildMonthInfoDescriptor());
addDescriptor(buildWeekInfoDescriptor());
addDescriptor(buildYearInfoDescriptor());
}
public void applyLogin() {
DatabaseLogin login = new DatabaseLogin();
login
.usePlatform(new oracle.toplink.platform.database.MySQL4Platform());
login.setDriverClassName("com.mysql.jdbc.Driver");
login.setConnectionString(Activator.getDefault().getPreferenceStore()
.getString(PreferenceConstants.P_MYSQL_CONSTR));
login.setUserName(Activator.getDefault().getPreferenceStore()
.getString(PreferenceConstants.P_MYSQL_USERNAME));
login.setPassword(Activator.getDefault().getPreferenceStore()
.getString(PreferenceConstants.P_MYSQL_PASSWORD));
// Configuration Properties.
// Sequencing.
login.setDefaultSequence(new TableSequence("", 50, "sequence", "name",
"count"));
setDatasourceLogin(login);
}
public ClassDescriptor buildDayInfoDescriptor() {
RelationalDescriptor descriptor = new RelationalDescriptor();
descriptor
.setJavaClass(rcpdev.todo.core.model.series.info.DayInfo.class);
descriptor.addTableName("todo_series_info");
// Inheritance Properties.
descriptor.getInheritancePolicy().setParentClass(
rcpdev.todo.core.model.series.SeriesInfo.class);
// Descriptor Properties.
descriptor.setAlias("DayInfo");
// Query Manager.
descriptor.getQueryManager().checkCacheForDoesExist();
// Event Manager.
// Mappings.
DirectToFieldMapping infoTypeMapping = new DirectToFieldMapping();
infoTypeMapping.setAttributeName("infoType");
infoTypeMapping.setFieldName("todo_series_info.day_type");
descriptor.addMapping(infoTypeMapping);
return descriptor;
}
public ClassDescriptor buildMonthInfoDescriptor() {
RelationalDescriptor descriptor = new RelationalDescriptor();
descriptor
.setJavaClass(rcpdev.todo.core.model.series.info.MonthInfo.class);
descriptor.addTableName("todo_series_info");
// Inheritance Properties.
descriptor.getInheritancePolicy().setParentClass(
rcpdev.todo.core.model.series.SeriesInfo.class);
// Descriptor Properties.
descriptor.setAlias("MonthInfo");
// Query Manager.
descriptor.getQueryManager().checkCacheForDoesExist();
// Event Manager.
// Mappings.
DirectToFieldMapping dayOfMonthMapping = new DirectToFieldMapping();
dayOfMonthMapping.setAttributeName("dayOfMonth");
dayOfMonthMapping.setFieldName("todo_series_info.month_day");
descriptor.addMapping(dayOfMonthMapping);
return descriptor;
}
public ClassDescriptor buildSeriesInfoDescriptor() {
RelationalDescriptor descriptor = new RelationalDescriptor();
descriptor.setJavaClass(rcpdev.todo.core.model.series.SeriesInfo.class);
descriptor.addTableName("todo_series_info");
descriptor.addPrimaryKeyFieldName("todo_series_info.id");
// Inheritance Properties.
descriptor.getInheritancePolicy().setClassIndicatorFieldName(
"todo_series_info.type");
descriptor.getInheritancePolicy().addClassIndicator(
rcpdev.todo.core.model.series.info.WeekInfo.class, "WEEK");
descriptor.getInheritancePolicy().addClassIndicator(
rcpdev.todo.core.model.series.info.DayInfo.class, "DAY");
descriptor.getInheritancePolicy().addClassIndicator(
rcpdev.todo.core.model.series.info.YearInfo.class, "YEAR");
descriptor.getInheritancePolicy().addClassIndicator(
rcpdev.todo.core.model.series.info.MonthInfo.class, "MONTH");
// Descriptor Properties.
descriptor.useSoftCacheWeakIdentityMap();
descriptor.setIdentityMapSize(100);
descriptor.useRemoteSoftCacheWeakIdentityMap();
descriptor.setRemoteIdentityMapSize(100);
descriptor.setSequenceNumberFieldName("todo_series_info.id");
descriptor.setSequenceNumberName("todo_series_info");
descriptor.setAlias("SeriesInfo");
// Query Manager.
descriptor.getQueryManager().checkCacheForDoesExist();
// Event Manager.
// Mappings.
DirectToFieldMapping baseDateMapping = new DirectToFieldMapping();
baseDateMapping.setAttributeName("baseDate");
baseDateMapping.setFieldName("todo_series_info.baseDate");
descriptor.addMapping(baseDateMapping);
DirectToFieldMapping idMapping = new DirectToFieldMapping();
idMapping.setAttributeName("id");
idMapping.setFieldName("todo_series_info.id");
descriptor.addMapping(idMapping);
DirectToFieldMapping intervalMapping = new DirectToFieldMapping();
intervalMapping.setAttributeName("interval");
intervalMapping.setFieldName("todo_series_info.span");
descriptor.addMapping(intervalMapping);
OneToOneMapping nextMapping = new OneToOneMapping();
nextMapping.setAttributeName("next");
nextMapping
.setReferenceClass(rcpdev.todo.core.model.series.SeriesInfo.class);
nextMapping.dontUseIndirection();
nextMapping.privateOwnedRelationship();
nextMapping.addForeignKeyFieldName("todo_series_info.next",
"todo_series_info.id");
descriptor.addMapping(nextMapping);
return descriptor;
}
public ClassDescriptor buildTodoItemDescriptor() {
RelationalDescriptor descriptor = new RelationalDescriptor();
descriptor.setJavaClass(rcpdev.todo.core.model.TodoItem.class);
descriptor.addTableName("todo_item");
descriptor.addPrimaryKeyFieldName("todo_item.id");
// Inheritance Properties.
descriptor.getInheritancePolicy().setClassIndicatorFieldName(
"todo_item.type");
descriptor.getInheritancePolicy().addClassIndicator(
rcpdev.todo.core.model.series.TodoSeries.class, "SERIES");
descriptor.getInheritancePolicy().addClassIndicator(
rcpdev.todo.core.model.TodoItem.class, "SINGLE");
// Descriptor Properties.
descriptor.useSoftCacheWeakIdentityMap();
descriptor.setIdentityMapSize(100);
descriptor.useRemoteSoftCacheWeakIdentityMap();
descriptor.setRemoteIdentityMapSize(100);
descriptor.setSequenceNumberFieldName("todo_item.id");
descriptor.setSequenceNumberName("todo_item");
descriptor.setAlias("TodoItem");
// Query Manager.
descriptor.getQueryManager().checkCacheForDoesExist();
// Event Manager.
// Mappings.
DirectToFieldMapping contentMapping = new DirectToFieldMapping();
contentMapping.setAttributeName("content");
contentMapping.setFieldName("todo_item.content");
descriptor.addMapping(contentMapping);
DirectToFieldMapping dateMapping = new DirectToFieldMapping();
dateMapping.setAttributeName("date");
dateMapping.setFieldName("todo_item.start_date");
descriptor.addMapping(dateMapping);
DirectToFieldMapping idMapping = new DirectToFieldMapping();
idMapping.setAttributeName("id");
idMapping.setFieldName("todo_item.id");
descriptor.addMapping(idMapping);
DirectToFieldMapping startTimeMapping = new DirectToFieldMapping();
startTimeMapping.setAttributeName("startTime");
startTimeMapping.setFieldName("todo_item.start_time");
descriptor.addMapping(startTimeMapping);
DirectToFieldMapping stopTimeMapping = new DirectToFieldMapping();
stopTimeMapping.setAttributeName("stopTime");
stopTimeMapping.setFieldName("todo_item.stop_time");
descriptor.addMapping(stopTimeMapping);
DirectToFieldMapping subjectMapping = new DirectToFieldMapping();
subjectMapping.setAttributeName("subject");
subjectMapping.setFieldName("todo_item.subject");
descriptor.addMapping(subjectMapping);
OneToOneMapping seriesMapping = new OneToOneMapping();
seriesMapping.setAttributeName("series");
seriesMapping
.setReferenceClass(rcpdev.todo.core.model.series.TodoSeries.class);
seriesMapping.dontUseIndirection();
seriesMapping
.addForeignKeyFieldName("todo_item.series", "todo_item.id");
descriptor.addMapping(seriesMapping);
return descriptor;
}
public ClassDescriptor buildTodoSeriesDescriptor() {
RelationalDescriptor descriptor = new RelationalDescriptor();
descriptor.setJavaClass(rcpdev.todo.core.model.series.TodoSeries.class);
descriptor.addTableName("todo_item");
descriptor.addTableName("todo_series");
// Inheritance Properties.
descriptor.getInheritancePolicy().setParentClass(
rcpdev.todo.core.model.TodoItem.class);
// Descriptor Properties.
descriptor.setAlias("TodoSeries");
// Query Manager.
descriptor.getQueryManager().checkCacheForDoesExist();
// Event Manager.
// Mappings.
DirectToFieldMapping seriesTypeMapping = new DirectToFieldMapping();
seriesTypeMapping.setAttributeName("seriesType");
seriesTypeMapping.setFieldName("todo_series.series_type");
descriptor.addMapping(seriesTypeMapping);
DirectToFieldMapping stopDateMapping = new DirectToFieldMapping();
stopDateMapping.setAttributeName("stopDate");
stopDateMapping.setFieldName("todo_series.stop_date");
descriptor.addMapping(stopDateMapping);
OneToOneMapping infoMapping = new OneToOneMapping();
infoMapping.setAttributeName("info");
infoMapping
.setReferenceClass(rcpdev.todo.core.model.series.SeriesInfo.class);
infoMapping.dontUseIndirection();
infoMapping.privateOwnedRelationship();
infoMapping.addForeignKeyFieldName("todo_series.series_info",
"todo_series_info.id");
descriptor.addMapping(infoMapping);
OneToManyMapping itemsMapping = new OneToManyMapping();
itemsMapping.setAttributeName("items");
itemsMapping.setReferenceClass(rcpdev.todo.core.model.TodoItem.class);
itemsMapping.privateOwnedRelationship();
itemsMapping.useTransparentCollection();
itemsMapping
.useCollectionClass(oracle.toplink.indirection.IndirectList.class);
itemsMapping.addTargetForeignKeyFieldName("todo_item.series",
"todo_item.id");
descriptor.addMapping(itemsMapping);
return descriptor;
}
public ClassDescriptor buildWeekInfoDescriptor() {
RelationalDescriptor descriptor = new RelationalDescriptor();
descriptor
.setJavaClass(rcpdev.todo.core.model.series.info.WeekInfo.class);
descriptor.addTableName("todo_series_info");
// Inheritance Properties.
descriptor.getInheritancePolicy().setParentClass(
rcpdev.todo.core.model.series.SeriesInfo.class);
// Descriptor Properties.
descriptor.setAlias("WeekInfo");
descriptor
.setAmendmentClass(rcpdev.todo.persistence.core.project.AfterLoad.class);
descriptor.setAmendmentMethodName("afterWeekInfoLoad");
// Query Manager.
descriptor.getQueryManager().checkCacheForDoesExist();
// Event Manager.
descriptor.applyAmendmentMethod();
return descriptor;
}
public ClassDescriptor buildYearInfoDescriptor() {
RelationalDescriptor descriptor = new RelationalDescriptor();
descriptor
.setJavaClass(rcpdev.todo.core.model.series.info.YearInfo.class);
descriptor.addTableName("todo_series_info");
// Inheritance Properties.
descriptor.getInheritancePolicy().setParentClass(
rcpdev.todo.core.model.series.SeriesInfo.class);
// Descriptor Properties.
descriptor.setAlias("YearInfo");
// Query Manager.
descriptor.getQueryManager().checkCacheForDoesExist();
// Event Manager.
// Mappings.
DirectToFieldMapping monthOfYearMapping = new DirectToFieldMapping();
monthOfYearMapping.setAttributeName("monthOfYear");
monthOfYearMapping.setFieldName("todo_series_info.y_month");
descriptor.addMapping(monthOfYearMapping);
return descriptor;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?