#17 add expires_dt

This commit is contained in:
Shinsuke Sugaya 2013-10-12 16:23:08 +09:00
parent 4f761f0c5f
commit 4b34f13890
51 changed files with 154 additions and 101 deletions

View file

@ -189,7 +189,7 @@ CREATE TABLE CRAWLING_SESSION(
ID IDENTITY NOT NULL PRIMARY KEY,
SESSION_ID VARCHAR(20) NOT NULL,
NAME VARCHAR(20),
EXPIRED_TIME TIMESTAMP NOT NULL,
EXPIRED_TIME TIMESTAMP,
CREATED_TIME TIMESTAMP NOT NULL
);

View file

@ -189,7 +189,7 @@ CREATE TABLE CRAWLING_SESSION(
ID BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT,
SESSION_ID VARCHAR(20) NOT NULL,
NAME VARCHAR(20),
EXPIRED_TIME TIMESTAMP NOT NULL,
EXPIRED_TIME TIMESTAMP,
CREATED_TIME TIMESTAMP NOT NULL
);

View file

@ -210,7 +210,7 @@ CREATE TABLE "CRAWLING_SESSION"(
"ID" NUMBER(18,0) NOT NULL,
"SESSION_ID" VARCHAR2(20) NOT NULL,
"NAME" VARCHAR2(20),
"EXPIRED_TIME" TIMESTAMP NOT NULL,
"EXPIRED_TIME" TIMESTAMP,
"CREATED_TIME" TIMESTAMP NOT NULL,
CONSTRAINT "CRAWLING_SESSION_PK" PRIMARY KEY ("ID") ENABLE

View file

@ -49,7 +49,6 @@ public abstract class BsCrawlingSessionForm {
@Maxbytelength(maxbytelength = 20)
public String name;
@Required(target = "confirmfromupdate,update,delete")
@DateType
public String expiredTime;

View file

@ -44,8 +44,6 @@ public abstract class BsCrawlingSessionPager implements Serializable {
public String sessionId;
public String expiredTime;
public String createdTime;
public void clear() {
@ -54,7 +52,6 @@ public abstract class BsCrawlingSessionPager implements Serializable {
id = null;
sessionId = null;
expiredTime = null;
createdTime = null;
}

View file

@ -98,7 +98,7 @@ public abstract class BsCrawlingSession implements Entity, Serializable,
/** NAME: {IX, VARCHAR(20)} */
protected String _name;
/** EXPIRED_TIME: {IX+, NotNull, TIMESTAMP(23, 10)} */
/** EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)} */
protected java.sql.Timestamp _expiredTime;
/** CREATED_TIME: {NotNull, TIMESTAMP(23, 10)} */
@ -415,16 +415,16 @@ public abstract class BsCrawlingSession implements Entity, Serializable,
}
/**
* [get] EXPIRED_TIME: {IX+, NotNull, TIMESTAMP(23, 10)} <br />
* @return The value of the column 'EXPIRED_TIME'. (basically NotNull if selected: for the constraint)
* [get] EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)} <br />
* @return The value of the column 'EXPIRED_TIME'. (NullAllowed even if selected: for no constraint)
*/
public java.sql.Timestamp getExpiredTime() {
return _expiredTime;
}
/**
* [set] EXPIRED_TIME: {IX+, NotNull, TIMESTAMP(23, 10)} <br />
* @param expiredTime The value of the column 'EXPIRED_TIME'. (basically NotNull if update: for the constraint)
* [set] EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)} <br />
* @param expiredTime The value of the column 'EXPIRED_TIME'. (NullAllowed: null update allowed for no constraint)
*/
public void setExpiredTime(final java.sql.Timestamp expiredTime) {
__modifiedProperties.addPropertyName("expiredTime");

View file

@ -258,7 +258,7 @@ public class BrowserTypeDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_BCC7793D_976C_4F0E_B085_6992A88EB95C",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_EBDC25E9_E237_4A91_ADD3_FA6F8CA7AB23",
false,
null,
null,

View file

@ -167,7 +167,7 @@ public class ClickLogDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_A9F51FCE_9080_4AB1_9B9E_F4EF1627F6BC",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_8853B179_F4EC_48B8_B723_8B61F13419D4",
false, null, null, null, null, null);
protected final ColumnInfo _columnSearchId = cci("SEARCH_ID", "SEARCH_ID",

View file

@ -180,7 +180,7 @@ public class CrawlingSessionDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_DE97C640_5BFE_435C_8103_F926207130A2",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_1A4E45FC_6AD7_4BDF_A764_207DD200D40E",
false, null, null, null, "crawlingSessionInfoList", null);
protected final ColumnInfo _columnSessionId = cci("SESSION_ID",
@ -192,7 +192,7 @@ public class CrawlingSessionDbm extends AbstractDBMeta {
false, null, null, null, null, null);
protected final ColumnInfo _columnExpiredTime = cci("EXPIRED_TIME",
"EXPIRED_TIME", null, null, true, "expiredTime",
"EXPIRED_TIME", null, null, false, "expiredTime",
java.sql.Timestamp.class, false, false, "TIMESTAMP", 23, 10, null,
false, null, null, null, null, null);

View file

@ -180,7 +180,7 @@ public class CrawlingSessionInfoDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_77A46931_0518_4608_A4C4_0D2DAA5BBB00",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_C4E8F6CF_7747_4C35_820B_0A2E3DF42FB4",
false, null, null, null, null, null);
protected final ColumnInfo _columnCrawlingSessionId = cci(

View file

@ -154,7 +154,7 @@ public class DataConfigToBrowserTypeMappingDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_1C6E611A_4D4E_4011_AF00_0230FA502323",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_2B76FBE0_224F_4AD1_85FD_41B4C9AEDC31",
false, null, null, null, null, null);
protected final ColumnInfo _columnDataConfigId = cci("DATA_CONFIG_ID",

View file

@ -154,7 +154,7 @@ public class DataConfigToLabelTypeMappingDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_E5BBDBF9_A553_4F6E_A210_93E93FCEC3B9",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_DC8C6B08_CE09_4FA8_9584_365B3ABDD21E",
false, null, null, null, null, null);
protected final ColumnInfo _columnDataConfigId = cci("DATA_CONFIG_ID",

View file

@ -154,7 +154,7 @@ public class DataConfigToRoleTypeMappingDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_F2A9899C_72C8_444A_9BD2_58044B13143B",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_5D1DDC67_A01C_4D73_9966_2486CC81B2CC",
false, null, null, null, null, null);
protected final ColumnInfo _columnDataConfigId = cci("DATA_CONFIG_ID",

View file

@ -310,7 +310,7 @@ public class DataCrawlingConfigDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_7B3BF39C_5D9F_4776_9789_EF2051BF07FC",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_CB77D9E9_35C6_4617_884E_D73D1D655F32",
false,
null,
null,

View file

@ -232,7 +232,7 @@ public class FailureUrlDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_A515E1CD_6561_45F0_A877_3ADC11B158C7",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_6F44BF79_8635_4FF9_A6E6_A1F2D36263E8",
false, null, null, null, null, null);
protected final ColumnInfo _columnUrl = cci("URL", "URL", null, null, true,

View file

@ -167,7 +167,7 @@ public class FavoriteLogDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_8093F0D4_36C4_4C66_8D8B_F486835CCBD4",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_781CB0AD_8431_4352_A1D6_A35937B0FA17",
false, null, null, null, null, null);
protected final ColumnInfo _columnUserId = cci("USER_ID", "USER_ID", null,

View file

@ -310,7 +310,7 @@ public class FileAuthenticationDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_5FB15A15_F9B9_4214_B082_C30C68D34672",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_2699B42A_0BB3_41FF_BFB5_AF81A30D0A01",
false, null, null, null, null, null);
protected final ColumnInfo _columnHostname = cci("HOSTNAME", "HOSTNAME",

View file

@ -154,7 +154,7 @@ public class FileConfigToBrowserTypeMappingDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_F3AD73A5_3429_439A_A897_8AA60BA7F92F",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_C8E02221_2BEB_4A3C_9661_552840233488",
false, null, null, null, null, null);
protected final ColumnInfo _columnFileConfigId = cci("FILE_CONFIG_ID",

View file

@ -154,7 +154,7 @@ public class FileConfigToLabelTypeMappingDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_F1D8E692_B51F_4B33_8D60_C3417ABAF9A9",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_40ED136E_748E_4BC7_961D_76CD3645AFE9",
false, null, null, null, null, null);
protected final ColumnInfo _columnFileConfigId = cci("FILE_CONFIG_ID",

View file

@ -154,7 +154,7 @@ public class FileConfigToRoleTypeMappingDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_C44040B3_CBD2_4B83_86FF_9B675CE04B35",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_C52ED1DA_CF0B_49EE_B9F7_9CCC5FD334E9",
false, null, null, null, null, null);
protected final ColumnInfo _columnFileConfigId = cci("FILE_CONFIG_ID",

View file

@ -401,7 +401,7 @@ public class FileCrawlingConfigDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_C2495BF5_5986_4ADF_82C0_5AFA214CE90F",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_50C8436F_B31A_41CB_A67E_77A1CEDD7E46",
false,
null,
null,

View file

@ -231,7 +231,7 @@ public class JobLogDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_351DD2BA_9924_4D3F_B06F_8C6656BDA0FB",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_A597AD31_D6B7_44D4_8A2C_D6B301347DAF",
false, null, null, null, null, null);
protected final ColumnInfo _columnJobName = cci("JOB_NAME", "JOB_NAME",

View file

@ -284,7 +284,7 @@ public class LabelTypeDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_A289E3B8_DC4C_4CC2_92F5_DE9F0C2152DF",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_8A7FB6C6_8549_42D5_8CA2_EC01B2BB8993",
false,
null,
null,

View file

@ -154,7 +154,7 @@ public class LabelTypeToRoleTypeMappingDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_DB871F90_8CE1_4D87_8CD9_3800DEE6B969",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_6C6CC5C9_4C99_4A34_B3FC_2D02022B9405",
false, null, null, null, null, null);
protected final ColumnInfo _columnLabelTypeId = cci("LABEL_TYPE_ID",

View file

@ -257,7 +257,7 @@ public class OverlappingHostDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_95778B85_9099_4451_9EA9_12A1E4F5C32C",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_52ADF097_4702_4C36_A0AA_CD34C439E98C",
false, null, null, null, null, null);
protected final ColumnInfo _columnRegularName = cci("REGULAR_NAME",

View file

@ -271,7 +271,7 @@ public class PathMappingDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_349291E0_7C94_4183_8713_9C0B5B13AC61",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_7B1E2705_018B_4143_B47F_BD2917F734C1",
false, null, null, null, null, null);
protected final ColumnInfo _columnRegex = cci("REGEX", "REGEX", null, null,

View file

@ -258,7 +258,7 @@ public class RequestHeaderDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_8254C113_A678_4537_B6F5_BF2876260FF0",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_976724F3_86F3_49E4_8A47_4FAC5AA8F709",
false, null, null, null, null, null);
protected final ColumnInfo _columnName = cci("NAME", "NAME", null, null,

View file

@ -258,7 +258,7 @@ public class RoleTypeDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_EAF14782_C98A_49ED_9557_3CF828C82347",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_1375DF17_88DE_425C_B243_92C84C2C1875",
false,
null,
null,

View file

@ -335,7 +335,7 @@ public class ScheduledJobDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_DE6BB1F9_9750_40AE_A9B6_72DBBB66E240",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_2338A94D_9157_4C50_A309_977F2624EA0A",
false, null, null, null, null, null);
protected final ColumnInfo _columnName = cci("NAME", "NAME", null, null,

View file

@ -167,7 +167,7 @@ public class SearchFieldLogDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_70BB7CA0_550F_4EBD_8E4F_68BF81F61FAB",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_C9C19A0F_6FA1_475C_934F_32C60D6B6B72",
false, null, null, null, null, null);
protected final ColumnInfo _columnSearchId = cci("SEARCH_ID", "SEARCH_ID",

View file

@ -286,7 +286,7 @@ public class SearchLogDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_72E440DA_72EE_4806_A0C2_BB7C52933D22",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_8D6385B7_786D_45E2_AA41_D5FA8C17BBF9",
false, null, null, null, "clickLogList,searchFieldLogList", null);
protected final ColumnInfo _columnSearchWord = cci("SEARCH_WORD",

View file

@ -167,7 +167,7 @@ public class UserInfoDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_F3916986_FD37_457F_BDF6_7EC7846FA2ED",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_22D09B91_FB6F_43EF_A2E5_739802A53FC1",
false, null, null, null, "favoriteLogList,searchLogList", null);
protected final ColumnInfo _columnCode = cci("CODE", "CODE", null, null,

View file

@ -323,7 +323,7 @@ public class WebAuthenticationDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_C887871E_7E3A_4F11_9FEF_3365211EB6A7",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_B7ED1035_3C63_4922_B4CF_C02B104FA82E",
false, null, null, null, null, null);
protected final ColumnInfo _columnHostname = cci("HOSTNAME", "HOSTNAME",

View file

@ -154,7 +154,7 @@ public class WebConfigToBrowserTypeMappingDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_6C07DF1E_714C_4196_BCDB_49A66B981945",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_710C901B_F4B7_42F7_B97F_3CB64A6939D9",
false, null, null, null, null, null);
protected final ColumnInfo _columnWebConfigId = cci("WEB_CONFIG_ID",

View file

@ -154,7 +154,7 @@ public class WebConfigToLabelTypeMappingDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_BB87A716_AC08_48F0_8AEC_182F704F99CD",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_A101C255_F997_4DC4_8949_453E3E4A9051",
false, null, null, null, null, null);
protected final ColumnInfo _columnWebConfigId = cci("WEB_CONFIG_ID",

View file

@ -154,7 +154,7 @@ public class WebConfigToRoleTypeMappingDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_8F6B2529_7C9F_4E3C_8CCB_FB72E32BDD9B",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_EA1A7409_A1D1_4BE4_BFFC_B03DFEB227DB",
false, null, null, null, null, null);
protected final ColumnInfo _columnWebConfigId = cci("WEB_CONFIG_ID",

View file

@ -414,7 +414,7 @@ public class WebCrawlingConfigDbm extends AbstractDBMeta {
"BIGINT",
19,
0,
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_05B91638_28D1_4204_BE8E_55C7BEAFE3E3",
"NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_A2A25811_03ED_49AF_9DA3_3BF45CE3AED3",
false,
null,
null,

View file

@ -378,7 +378,7 @@ public class BsCrawlingSessionCB extends AbstractConditionBean {
}
/**
* EXPIRED_TIME: {IX+, NotNull, TIMESTAMP(23, 10)}
* EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)}
* @return The information object of specified column. (NotNull)
*/
public HpSpecifiedColumn columnExpiredTime() {

View file

@ -653,7 +653,7 @@ public abstract class AbstractBsCrawlingSessionCQ extends
/**
* Equal(=). And NullIgnored, OnlyOnceRegistered. <br />
* EXPIRED_TIME: {IX+, NotNull, TIMESTAMP(23, 10)}
* EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)}
* @param expiredTime The value of expiredTime as equal. (NullAllowed: if null, no condition)
*/
public void setExpiredTime_Equal(final java.sql.Timestamp expiredTime) {
@ -662,7 +662,7 @@ public abstract class AbstractBsCrawlingSessionCQ extends
/**
* GreaterThan(&gt;). And NullIgnored, OnlyOnceRegistered. <br />
* EXPIRED_TIME: {IX+, NotNull, TIMESTAMP(23, 10)}
* EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)}
* @param expiredTime The value of expiredTime as greaterThan. (NullAllowed: if null, no condition)
*/
public void setExpiredTime_GreaterThan(final java.sql.Timestamp expiredTime) {
@ -671,7 +671,7 @@ public abstract class AbstractBsCrawlingSessionCQ extends
/**
* LessThan(&lt;). And NullIgnored, OnlyOnceRegistered. <br />
* EXPIRED_TIME: {IX+, NotNull, TIMESTAMP(23, 10)}
* EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)}
* @param expiredTime The value of expiredTime as lessThan. (NullAllowed: if null, no condition)
*/
public void setExpiredTime_LessThan(final java.sql.Timestamp expiredTime) {
@ -680,7 +680,7 @@ public abstract class AbstractBsCrawlingSessionCQ extends
/**
* GreaterEqual(&gt;=). And NullIgnored, OnlyOnceRegistered. <br />
* EXPIRED_TIME: {IX+, NotNull, TIMESTAMP(23, 10)}
* EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)}
* @param expiredTime The value of expiredTime as greaterEqual. (NullAllowed: if null, no condition)
*/
public void setExpiredTime_GreaterEqual(final java.sql.Timestamp expiredTime) {
@ -689,7 +689,7 @@ public abstract class AbstractBsCrawlingSessionCQ extends
/**
* LessEqual(&lt;=). And NullIgnored, OnlyOnceRegistered. <br />
* EXPIRED_TIME: {IX+, NotNull, TIMESTAMP(23, 10)}
* EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)}
* @param expiredTime The value of expiredTime as lessEqual. (NullAllowed: if null, no condition)
*/
public void setExpiredTime_LessEqual(final java.sql.Timestamp expiredTime) {
@ -699,7 +699,7 @@ public abstract class AbstractBsCrawlingSessionCQ extends
/**
* FromTo with various options. (versatile) {(default) fromDatetime &lt;= column &lt;= toDatetime} <br />
* And NullIgnored, OnlyOnceRegistered. <br />
* EXPIRED_TIME: {IX+, NotNull, TIMESTAMP(23, 10)}
* EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)}
* <pre>e.g. setExpiredTime_FromTo(fromDate, toDate, new <span style="color: #FD4747">FromToOption</span>().compareAsDate());</pre>
* @param fromDatetime The from-datetime(yyyy/MM/dd HH:mm:ss.SSS) of expiredTime. (NullAllowed: if null, no from-condition)
* @param toDatetime The to-datetime(yyyy/MM/dd HH:mm:ss.SSS) of expiredTime. (NullAllowed: if null, no to-condition)
@ -717,7 +717,7 @@ public abstract class AbstractBsCrawlingSessionCQ extends
/**
* DateFromTo. (Date means yyyy/MM/dd) {fromDate &lt;= column &lt; toDate + 1 day} <br />
* And NullIgnored, OnlyOnceRegistered. <br />
* EXPIRED_TIME: {IX+, NotNull, TIMESTAMP(23, 10)}
* EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)}
* <pre>
* e.g. from:{2007/04/10 08:24:53} to:{2007/04/16 14:36:29}
* column &gt;= '2007/04/10 00:00:00' and column <span style="color: #FD4747">&lt; '2007/04/17 00:00:00'</span>
@ -731,6 +731,22 @@ public abstract class AbstractBsCrawlingSessionCQ extends
new FromToOption().compareAsDate());
}
/**
* IsNull {is null}. And OnlyOnceRegistered. <br />
* EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)}
*/
public void setExpiredTime_IsNull() {
regExpiredTime(CK_ISN, DOBJ);
}
/**
* IsNotNull {is not null}. And OnlyOnceRegistered. <br />
* EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)}
*/
public void setExpiredTime_IsNotNull() {
regExpiredTime(CK_ISNN, DOBJ);
}
protected void regExpiredTime(final ConditionKey k, final Object v) {
regQ(k, v, getCValueExpiredTime(), "EXPIRED_TIME");
}

View file

@ -349,7 +349,7 @@ public class BsCrawlingSessionCQ extends AbstractBsCrawlingSessionCQ {
/**
* Add order-by as ascend. <br />
* EXPIRED_TIME: {IX+, NotNull, TIMESTAMP(23, 10)}
* EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)}
* @return this. (NotNull)
*/
public BsCrawlingSessionCQ addOrderBy_ExpiredTime_Asc() {
@ -359,7 +359,7 @@ public class BsCrawlingSessionCQ extends AbstractBsCrawlingSessionCQ {
/**
* Add order-by as descend. <br />
* EXPIRED_TIME: {IX+, NotNull, TIMESTAMP(23, 10)}
* EXPIRED_TIME: {IX+, TIMESTAMP(23, 10)}
* @return this. (NotNull)
*/
public BsCrawlingSessionCQ addOrderBy_ExpiredTime_Desc() {

View file

@ -17,6 +17,7 @@
package jp.sf.fess.ds.impl;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -25,8 +26,11 @@ import jp.sf.fess.Constants;
import jp.sf.fess.db.exentity.DataCrawlingConfig;
import jp.sf.fess.ds.DataStore;
import jp.sf.fess.ds.IndexUpdateCallback;
import jp.sf.fess.helper.CrawlingSessionHelper;
import jp.sf.fess.taglib.FessFunctions;
import jp.sf.fess.util.ParameterUtil;
import org.seasar.framework.container.SingletonS2Container;
import org.seasar.framework.util.OgnlUtil;
import org.seasar.framework.util.StringUtil;
import org.slf4j.Logger;
@ -54,12 +58,20 @@ public abstract class AbstractDataStoreImpl implements DataStore {
.getHandlerParameter());
final Map<String, String> scriptMap = ParameterUtil.parse(config
.getHandlerScript());
final CrawlingSessionHelper crawlingSessionHelper = SingletonS2Container
.getComponent("crawlingSessionHelper");
final Date documentExpires = crawlingSessionHelper.getDocumentExpires();
initParamMap.putAll(paramMap);
paramMap = initParamMap;
// default values
final Map<String, Object> defaultDataMap = new HashMap<String, Object>();
// expires
if (documentExpires != null) {
defaultDataMap.put(crawlingSessionHelper.getExpiresField(),
FessFunctions.formatDate(documentExpires));
}
// segment
defaultDataMap.put("segment", initParamMap.get(Constants.SESSION_ID));
// tstamp

View file

@ -27,7 +27,6 @@ import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import javax.annotation.Resource;
import javax.servlet.ServletContext;
@ -47,6 +46,7 @@ import jp.sf.fess.helper.WebFsIndexHelper;
import jp.sf.fess.screenshot.ScreenShotManager;
import jp.sf.fess.service.CrawlingSessionService;
import jp.sf.fess.service.PathMappingService;
import jp.sf.fess.taglib.FessFunctions;
import jp.sf.fess.util.ResourceUtil;
import org.codelibs.core.CoreLibConstants;
@ -140,6 +140,9 @@ public class Crawler implements Serializable {
@Option(name = "-o", aliases = "--operation", metaVar = "operation", usage = "Opration when crawlwer is finised")
protected String operation;
@Option(name = "-e", aliases = "--expires", metaVar = "expires", usage = "Expires for documents")
protected String expires;
protected Options() {
// noghing
}
@ -286,8 +289,13 @@ public class Crawler implements Serializable {
try {
crawlingSessionHelper.store(options.sessionId);
final String dayForCleanupStr = crawlerProperties.getProperty(
Constants.DAY_FOR_CLEANUP_PROPERTY, "1");
final String dayForCleanupStr;
if (StringUtil.isNotBlank(options.expires)) {
dayForCleanupStr = options.expires;
} else {
dayForCleanupStr = crawlerProperties.getProperty(
Constants.DAY_FOR_CLEANUP_PROPERTY, "1");
}
int dayForCleanup = -1;
try {
dayForCleanup = Integer.parseInt(dayForCleanupStr);
@ -466,19 +474,11 @@ public class Crawler implements Serializable {
// clean up
try {
final Set<String> expiredSessionIdSet = crawlingSessionHelper
.getExpiredSessionIdSet();
for (final String expiredSessionId : expiredSessionIdSet) {
if (logger.isInfoEnabled()) {
logger.info("Deleted segment:" + expiredSessionId
+ " in " + updateSolrGroup.getGroupName());
}
updateSolrGroup
.deleteByQuery("segment:" + expiredSessionId);
if (screenShotManager != null) {
screenShotManager.delete(expiredSessionId);
}
}
updateSolrGroup.deleteByQuery(crawlingSessionHelper
.getExpiresField()
+ ":[* TO "
+ FessFunctions.formatDate(new Date())
+ "] NOT segment:" + options.sessionId);
} catch (final Exception e) {
if (logger.isWarnEnabled()) {
logger.warn("Could not delete expired sessions in "

View file

@ -51,14 +51,14 @@ public class CrawlingSessionHelper implements Serializable {
private static final long serialVersionUID = 1L;
public int defaultExpiredDays = 365;
public int expiredMinutesByZeroDay = 1;
protected Map<String, String> infoMap;
protected Set<String> expiredSessionIdSet = new HashSet<String>();
protected Date documentExpires;
protected String expiresField = "expires_dt";
protected CrawlingSessionService getCrawlingSessionService() {
return SingletonS2Container.getComponent(CrawlingSessionService.class);
}
@ -90,8 +90,6 @@ public class CrawlingSessionHelper implements Serializable {
sessionId);
if (crawlingSession == null) {
crawlingSession = new CrawlingSession(sessionId);
crawlingSession
.setExpiredTime(getExpiredTimestamp(defaultExpiredDays));
try {
getCrawlingSessionService().store(crawlingSession);
} catch (final Exception e) {
@ -135,11 +133,10 @@ public class CrawlingSessionHelper implements Serializable {
} else {
crawlingSession.setName(Constants.CRAWLING_SESSION_SYSTEM_NAME);
}
if (dayForCleanup < 0) {
crawlingSession
.setExpiredTime(getExpiredTimestamp(defaultExpiredDays));
} else {
crawlingSession.setExpiredTime(getExpiredTimestamp(dayForCleanup));
if (dayForCleanup >= 0) {
final Timestamp expires = getExpiredTimestamp(dayForCleanup);
crawlingSession.setExpiredTime(expires);
documentExpires = expires;
}
try {
getCrawlingSessionService().store(crawlingSession);
@ -149,13 +146,12 @@ public class CrawlingSessionHelper implements Serializable {
}
public Date getDocumentExpires() {
return documentExpires;
}
protected Timestamp getExpiredTimestamp(final int days) {
if (days > 0) {
return new Timestamp(DateUtils.addDays(new Date(), days).getTime());
} else {
return new Timestamp(DateUtils.addMinutes(new Date(),
expiredMinutesByZeroDay).getTime());
}
return new Timestamp(DateUtils.addDays(new Date(), days).getTime());
}
public Map<String, String> getInfoMap(final String sessionId) {
@ -171,7 +167,9 @@ public class CrawlingSessionHelper implements Serializable {
public String generateId(final Map<String, Object> dataMap) {
final String url = (String) dataMap.get("url");
@SuppressWarnings("unchecked")
final List<String> browserTypeList = (List<String>) dataMap.get("type");
@SuppressWarnings("unchecked")
final List<String> roleTypeList = (List<String>) dataMap.get("role");
return generateId(url, browserTypeList, roleTypeList);
}
@ -235,4 +233,12 @@ public class CrawlingSessionHelper implements Serializable {
return value.replace('"', ' ');
}
public String getExpiresField() {
return expiresField;
}
public void setExpiresField(final String expiresField) {
this.expiresField = expiresField;
}
}

View file

@ -178,7 +178,8 @@ public class SystemHelper implements Serializable {
public void executeCrawler(final String sessionId,
final String[] webConfigIds, final String[] fileConfigIds,
final String[] dataConfigIds, final String operation) {
final String[] dataConfigIds, final String operation,
final int documentExpires) {
final List<String> crawlerCmdList = new ArrayList<String>();
final String cpSeparator = SystemUtils.IS_OS_WINDOWS ? ";" : ":";
final ServletContext servletContext = SingletonS2Container
@ -262,6 +263,10 @@ public class SystemHelper implements Serializable {
crawlerCmdList.add("-o");
crawlerCmdList.add(operation);
}
if (documentExpires >= -1) {
crawlerCmdList.add("-e");
crawlerCmdList.add(Integer.toString(documentExpires));
}
final File baseDir = new File(servletContext.getRealPath("/"));

View file

@ -34,6 +34,8 @@ public class CrawlJob {
private static final Logger logger = LoggerFactory
.getLogger(CrawlJob.class);
protected int documentExpires = -2;
public String execute(final JobExecutor jobExecutor) {
return execute(jobExecutor, null, null, null, Constants.COMMIT);
}
@ -103,7 +105,7 @@ public class CrawlJob {
crawlingSessionHelper.store(sessionId);
SingletonS2Container.getComponent(SystemHelper.class)
.executeCrawler(sessionId, webConfigIds, fileConfigIds,
dataConfigIds, operation);
dataConfigIds, operation, documentExpires);
} catch (final FessSystemException e) {
throw e;
} catch (final Exception e) {
@ -114,4 +116,12 @@ public class CrawlJob {
}
public int getDocumentExpires() {
return documentExpires;
}
public void setDocumentExpires(final int documentExpires) {
this.documentExpires = documentExpires;
}
}

View file

@ -79,9 +79,6 @@ public class CrawlingSessionService extends BsCrawlingSessionService implements
throw new FessSystemException("Crawling Session is null.");
}
final Timestamp now = new Timestamp(System.currentTimeMillis());
if (crawlingSession.getExpiredTime() == null) {
crawlingSession.setExpiredTime(now);
}
if (crawlingSession.getCreatedTime() == null) {
crawlingSession.setCreatedTime(now);
}

View file

@ -21,6 +21,7 @@ import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
@ -168,6 +169,7 @@ public abstract class AbstractFessFileTransformer extends
.getComponent("crawlingSessionHelper");
final String sessionId = crawlingSessionHelper
.getCanonicalSessionId(responseData.getSessionId());
final Date documentExpires = crawlingSessionHelper.getDocumentExpires();
final PathMappingHelper pathMappingHelper = SingletonS2Container
.getComponent("pathMappingHelper");
final String url = pathMappingHelper.replaceUrl(sessionId,
@ -180,6 +182,11 @@ public abstract class AbstractFessFileTransformer extends
Constants.USE_ACL_AS_ROLE, Constants.FALSE).equals(
Constants.TRUE);
// expires
if (documentExpires != null) {
putResultDataBody(dataMap, crawlingSessionHelper.getExpiresField(),
FessFunctions.formatDate(documentExpires));
}
// segment
putResultDataBody(dataMap, "segment", sessionId);
// content

View file

@ -27,6 +27,7 @@ import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
@ -208,11 +209,17 @@ public class FessXpathTransformer extends AbstractFessXpathTransformer {
.getComponent("crawlingSessionHelper");
final String sessionId = crawlingSessionHelper
.getCanonicalSessionId(responseData.getSessionId());
final Date documentExpires = crawlingSessionHelper.getDocumentExpires();
final PathMappingHelper pathMappingHelper = SingletonS2Container
.getComponent("pathMappingHelper");
final String url = pathMappingHelper.replaceUrl(sessionId,
responseData.getUrl());
// expires
if (documentExpires != null) {
putResultDataBody(dataMap, crawlingSessionHelper.getExpiresField(),
FessFunctions.formatDate(documentExpires));
}
// title
// content
putResultDataBody(dataMap, "content",

View file

@ -141,9 +141,6 @@
</initMethod>
</component>
<component name="crawlingSessionHelper" class="jp.sf.fess.helper.CrawlingSessionHelper">
<!--
<property name="defaultExpiredDays">365</property>
-->
</component>
<component name="mailHelper" class="jp.sf.fess.helper.MailHelper">
<!--

View file

@ -56,10 +56,10 @@
<tr>
<th style="text-align: center; width: 150px;"><bean:message
key="labels.crawling_session_session_id" /></th>
<th style="text-align: center; width: 180px;"><bean:message
key="labels.crawling_session_expired_time" /></th>
<th style="text-align: center; width: 180px;"><bean:message
key="labels.crawling_session_created_time" /></th>
<th style="text-align: center; width: 180px;"><bean:message
key="labels.crawling_session_expired_time" /></th>
<th style="text-align: center; width: 100px;">&nbsp;</th>
</tr>
@ -68,13 +68,13 @@
<c:forEach var="data" varStatus="s"
items="${crawlingSessionItems}">
<tr class="${s.index % 2 == 0 ? 'row1' : 'row2'}">
<td style="text-align: center;"><html:link
href="${f:url('/admin/searchList/search')}?query=segment:${f:u(data.sessionId)}">${f:h(data.sessionId)}</html:link></td>
<td style="text-align: center;">${f:h(data.expiredTime)}</td>
<td style="text-align: center;">${f:h(data.createdTime)}</td>
<td style="text-align: center;">
<c:if test="${data.expiredTime==null}"><bean:message key="labels.none" /></c:if>
<c:if test="${data.expiredTime!=null}">${f:h(data.expiredTime)}</c:if>
</td>
<td style="text-align: center;"><s:link