Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
solo-1
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
solo-1
Commits
e8235eef
Unverified
Commit
e8235eef
authored
Sep 16, 2018
by
Liang Ding
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
♻
#12509 文章时间字段
parent
eaea8f98
Changes
20
Show whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
161 additions
and
170 deletions
+161
-170
src/main/java/org/b3log/solo/api/metaweblog/MetaWeblogAPI.java
...ain/java/org/b3log/solo/api/metaweblog/MetaWeblogAPI.java
+4
-4
src/main/java/org/b3log/solo/dev/ArticleGenerator.java
src/main/java/org/b3log/solo/dev/ArticleGenerator.java
+3
-4
src/main/java/org/b3log/solo/event/rhythm/ArticleSender.java
src/main/java/org/b3log/solo/event/rhythm/ArticleSender.java
+2
-2
src/main/java/org/b3log/solo/event/rhythm/ArticleUpdater.java
...main/java/org/b3log/solo/event/rhythm/ArticleUpdater.java
+2
-4
src/main/java/org/b3log/solo/model/Article.java
src/main/java/org/b3log/solo/model/Article.java
+13
-3
src/main/java/org/b3log/solo/processor/BlogProcessor.java
src/main/java/org/b3log/solo/processor/BlogProcessor.java
+3
-3
src/main/java/org/b3log/solo/processor/FeedProcessor.java
src/main/java/org/b3log/solo/processor/FeedProcessor.java
+15
-13
src/main/java/org/b3log/solo/processor/SitemapProcessor.java
src/main/java/org/b3log/solo/processor/SitemapProcessor.java
+5
-5
src/main/java/org/b3log/solo/processor/console/ArticleConsole.java
...java/org/b3log/solo/processor/console/ArticleConsole.java
+3
-3
src/main/java/org/b3log/solo/processor/util/Filler.java
src/main/java/org/b3log/solo/processor/util/Filler.java
+4
-4
src/main/java/org/b3log/solo/repository/impl/ArticleRepositoryImpl.java
...org/b3log/solo/repository/impl/ArticleRepositoryImpl.java
+11
-12
src/main/java/org/b3log/solo/service/ArticleMgmtService.java
src/main/java/org/b3log/solo/service/ArticleMgmtService.java
+22
-28
src/main/java/org/b3log/solo/service/ArticleQueryService.java
...main/java/org/b3log/solo/service/ArticleQueryService.java
+23
-31
src/main/java/org/b3log/solo/service/ExportService.java
src/main/java/org/b3log/solo/service/ExportService.java
+3
-3
src/main/java/org/b3log/solo/service/ImportService.java
src/main/java/org/b3log/solo/service/ImportService.java
+2
-2
src/main/java/org/b3log/solo/service/InitService.java
src/main/java/org/b3log/solo/service/InitService.java
+7
-10
src/main/java/org/b3log/solo/util/comparator/ArticleCreateDateComparator.java
...log/solo/util/comparator/ArticleCreateDateComparator.java
+4
-5
src/main/java/org/b3log/solo/util/comparator/ArticleUpdateDateComparator.java
...log/solo/util/comparator/ArticleUpdateDateComparator.java
+3
-3
src/main/resources/repository.json
src/main/resources/repository.json
+4
-4
src/test/java/org/b3log/solo/repository/impl/ArticleRepositoryImplTestCase.java
...g/solo/repository/impl/ArticleRepositoryImplTestCase.java
+28
-27
No files found.
src/main/java/org/b3log/solo/api/metaweblog/MetaWeblogAPI.java
View file @
e8235eef
...
@@ -68,7 +68,7 @@ import java.util.List;
...
@@ -68,7 +68,7 @@ import java.util.List;
* </p>
* </p>
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.0.0.1
7, Aug 2
, 2018
* @version 1.0.0.1
8, Sep 16
, 2018
* @since 0.4.0
* @since 0.4.0
*/
*/
@RequestProcessor
@RequestProcessor
...
@@ -346,7 +346,7 @@ public class MetaWeblogAPI {
...
@@ -346,7 +346,7 @@ public class MetaWeblogAPI {
+
"pattern[yyyy-MM-dd'T'HH:mm:ss, yyyyMMdd'T'HH:mm:ss'Z']"
);
+
"pattern[yyyy-MM-dd'T'HH:mm:ss, yyyyMMdd'T'HH:mm:ss'Z']"
);
date
=
DateUtils
.
parseDate
(
dateString
,
new
String
[]{
"yyyyMMdd'T'HH:mm:ss"
,
"yyyyMMdd'T'HH:mm:ss'Z'"
});
date
=
DateUtils
.
parseDate
(
dateString
,
new
String
[]{
"yyyyMMdd'T'HH:mm:ss"
,
"yyyyMMdd'T'HH:mm:ss'Z'"
});
}
}
ret
.
put
(
Article
.
ARTICLE_CREATE
_DATE
,
date
);
ret
.
put
(
Article
.
ARTICLE_CREATE
D
,
date
.
getTime
()
);
}
else
if
(
"title"
.
equals
(
name
))
{
}
else
if
(
"title"
.
equals
(
name
))
{
ret
.
put
(
Article
.
ARTICLE_TITLE
,
member
.
getJSONObject
(
"value"
).
getString
(
"string"
));
ret
.
put
(
Article
.
ARTICLE_TITLE
,
member
.
getJSONObject
(
"value"
).
getString
(
"string"
));
}
else
if
(
"description"
.
equals
(
name
))
{
}
else
if
(
"description"
.
equals
(
name
))
{
...
@@ -456,7 +456,7 @@ public class MetaWeblogAPI {
...
@@ -456,7 +456,7 @@ public class MetaWeblogAPI {
}
}
final
JSONObject
article
=
result
.
getJSONObject
(
Article
.
ARTICLE
);
final
JSONObject
article
=
result
.
getJSONObject
(
Article
.
ARTICLE
);
final
Date
createDate
=
(
Date
)
article
.
get
(
Article
.
ARTICLE_CREATE_DATE
);
final
long
createDate
=
article
.
getLong
(
Article
.
ARTICLE_CREATED
);
final
String
articleTitle
=
StringEscapeUtils
.
escapeXml
(
article
.
getString
(
Article
.
ARTICLE_TITLE
));
final
String
articleTitle
=
StringEscapeUtils
.
escapeXml
(
article
.
getString
(
Article
.
ARTICLE_TITLE
));
stringBuilder
.
append
(
"<struct>"
);
stringBuilder
.
append
(
"<struct>"
);
...
@@ -488,7 +488,7 @@ public class MetaWeblogAPI {
...
@@ -488,7 +488,7 @@ public class MetaWeblogAPI {
final
StringBuilder
stringBuilder
=
new
StringBuilder
();
final
StringBuilder
stringBuilder
=
new
StringBuilder
();
final
List
<
JSONObject
>
recentArticles
=
articleQueryService
.
getRecentArticles
(
fetchSize
);
final
List
<
JSONObject
>
recentArticles
=
articleQueryService
.
getRecentArticles
(
fetchSize
);
for
(
final
JSONObject
article
:
recentArticles
)
{
for
(
final
JSONObject
article
:
recentArticles
)
{
final
Date
createDate
=
(
Date
)
article
.
get
(
Article
.
ARTICLE_CREATE_DATE
);
final
long
createDate
=
article
.
getLong
(
Article
.
ARTICLE_CREATED
);
final
String
articleTitle
=
StringEscapeUtils
.
escapeXml
(
article
.
getString
(
Article
.
ARTICLE_TITLE
));
final
String
articleTitle
=
StringEscapeUtils
.
escapeXml
(
article
.
getString
(
Article
.
ARTICLE_TITLE
));
stringBuilder
.
append
(
"<value><struct>"
);
stringBuilder
.
append
(
"<value><struct>"
);
...
...
src/main/java/org/b3log/solo/dev/ArticleGenerator.java
View file @
e8235eef
...
@@ -37,12 +37,11 @@ import javax.servlet.http.HttpServletResponse;
...
@@ -37,12 +37,11 @@ import javax.servlet.http.HttpServletResponse;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.util.Date
;
import
java.util.Date
;
/**
/**
* Generates some dummy articles for development testing.
* Generates some dummy articles for development testing.
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.0.0.
6, Apr 15
, 2018
* @version 1.0.0.
7, Sep 16
, 2018
* @since 0.4.0
* @since 0.4.0
*/
*/
@RequestProcessor
@RequestProcessor
...
@@ -112,8 +111,8 @@ public class ArticleGenerator {
...
@@ -112,8 +111,8 @@ public class ArticleGenerator {
final
int
deviationDay
=
-(
Integer
.
valueOf
(
String
.
valueOf
(
i
).
substring
(
0
,
1
))
%
deviationBase
);
final
int
deviationDay
=
-(
Integer
.
valueOf
(
String
.
valueOf
(
i
).
substring
(
0
,
1
))
%
deviationBase
);
final
Date
date
=
DateUtils
.
addMonths
(
new
Date
(),
deviationDay
);
final
Date
date
=
DateUtils
.
addMonths
(
new
Date
(),
deviationDay
);
article
.
put
(
Article
.
ARTICLE_CREATE
_DATE
,
date
);
article
.
put
(
Article
.
ARTICLE_CREATE
D
,
date
.
getTime
()
);
article
.
put
(
Article
.
ARTICLE_UPDATE
_DATE
,
date
);
article
.
put
(
Article
.
ARTICLE_UPDATE
D
,
date
.
getTime
()
);
article
.
put
(
Article
.
ARTICLE_RANDOM_DOUBLE
,
Math
.
random
());
article
.
put
(
Article
.
ARTICLE_RANDOM_DOUBLE
,
Math
.
random
());
article
.
put
(
Article
.
ARTICLE_COMMENTABLE
,
true
);
article
.
put
(
Article
.
ARTICLE_COMMENTABLE
,
true
);
article
.
put
(
Article
.
ARTICLE_VIEW_PWD
,
""
);
article
.
put
(
Article
.
ARTICLE_VIEW_PWD
,
""
);
...
...
src/main/java/org/b3log/solo/event/rhythm/ArticleSender.java
View file @
e8235eef
...
@@ -48,7 +48,7 @@ import java.util.Date;
...
@@ -48,7 +48,7 @@ import java.util.Date;
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author ArmstrongCN
* @author ArmstrongCN
* @version 1.0.2.1
3, Aug 2
, 2018
* @version 1.0.2.1
4, Sep 16
, 2018
* @since 0.3.1
* @since 0.3.1
*/
*/
public
final
class
ArticleSender
extends
AbstractEventListener
<
JSONObject
>
{
public
final
class
ArticleSender
extends
AbstractEventListener
<
JSONObject
>
{
...
@@ -104,7 +104,7 @@ public final class ArticleSender extends AbstractEventListener<JSONObject> {
...
@@ -104,7 +104,7 @@ public final class ArticleSender extends AbstractEventListener<JSONObject> {
article
.
put
(
Article
.
ARTICLE_TAGS_REF
,
originalArticle
.
getString
(
Article
.
ARTICLE_TAGS_REF
));
article
.
put
(
Article
.
ARTICLE_TAGS_REF
,
originalArticle
.
getString
(
Article
.
ARTICLE_TAGS_REF
));
article
.
put
(
Article
.
ARTICLE_AUTHOR_EMAIL
,
originalArticle
.
getString
(
Article
.
ARTICLE_AUTHOR_EMAIL
));
article
.
put
(
Article
.
ARTICLE_AUTHOR_EMAIL
,
originalArticle
.
getString
(
Article
.
ARTICLE_AUTHOR_EMAIL
));
article
.
put
(
Article
.
ARTICLE_CONTENT
,
originalArticle
.
getString
(
Article
.
ARTICLE_CONTENT
));
article
.
put
(
Article
.
ARTICLE_CONTENT
,
originalArticle
.
getString
(
Article
.
ARTICLE_CONTENT
));
article
.
put
(
Article
.
ARTICLE_
CREATE_DATE
,
((
Date
)
originalArticle
.
get
(
Article
.
ARTICLE_CREATE_DATE
)).
getTime
(
));
article
.
put
(
Article
.
ARTICLE_
T_CREATE_DATE
,
originalArticle
.
getLong
(
Article
.
ARTICLE_CREATED
));
article
.
put
(
Common
.
POST_TO_COMMUNITY
,
originalArticle
.
getBoolean
(
Common
.
POST_TO_COMMUNITY
));
article
.
put
(
Common
.
POST_TO_COMMUNITY
,
originalArticle
.
getBoolean
(
Common
.
POST_TO_COMMUNITY
));
// Removes this property avoid to persist
// Removes this property avoid to persist
...
...
src/main/java/org/b3log/solo/event/rhythm/ArticleUpdater.java
View file @
e8235eef
...
@@ -38,8 +38,6 @@ import org.b3log.solo.service.PreferenceQueryService;
...
@@ -38,8 +38,6 @@ import org.b3log.solo.service.PreferenceQueryService;
import
org.b3log.solo.util.Solos
;
import
org.b3log.solo.util.Solos
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.Date
;
/**
/**
* This listener is responsible for updating article to B3log Rhythm.
* This listener is responsible for updating article to B3log Rhythm.
* <p>
* <p>
...
@@ -47,7 +45,7 @@ import java.util.Date;
...
@@ -47,7 +45,7 @@ import java.util.Date;
* </p>
* </p>
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.0.1.
3, Aug 2
, 2018
* @version 1.0.1.
4, Sep 16
, 2018
* @since 0.6.0
* @since 0.6.0
*/
*/
public
final
class
ArticleUpdater
extends
AbstractEventListener
<
JSONObject
>
{
public
final
class
ArticleUpdater
extends
AbstractEventListener
<
JSONObject
>
{
...
@@ -102,7 +100,7 @@ public final class ArticleUpdater extends AbstractEventListener<JSONObject> {
...
@@ -102,7 +100,7 @@ public final class ArticleUpdater extends AbstractEventListener<JSONObject> {
article
.
put
(
Article
.
ARTICLE_TAGS_REF
,
originalArticle
.
getString
(
Article
.
ARTICLE_TAGS_REF
));
article
.
put
(
Article
.
ARTICLE_TAGS_REF
,
originalArticle
.
getString
(
Article
.
ARTICLE_TAGS_REF
));
article
.
put
(
Article
.
ARTICLE_AUTHOR_EMAIL
,
originalArticle
.
getString
(
Article
.
ARTICLE_AUTHOR_EMAIL
));
article
.
put
(
Article
.
ARTICLE_AUTHOR_EMAIL
,
originalArticle
.
getString
(
Article
.
ARTICLE_AUTHOR_EMAIL
));
article
.
put
(
Article
.
ARTICLE_CONTENT
,
originalArticle
.
getString
(
Article
.
ARTICLE_CONTENT
));
article
.
put
(
Article
.
ARTICLE_CONTENT
,
originalArticle
.
getString
(
Article
.
ARTICLE_CONTENT
));
article
.
put
(
Article
.
ARTICLE_
CREATE_DATE
,
((
Date
)
originalArticle
.
get
(
Article
.
ARTICLE_CREATE_DATE
)).
getTime
(
));
article
.
put
(
Article
.
ARTICLE_
T_CREATE_DATE
,
originalArticle
.
getLong
(
Article
.
ARTICLE_CREATED
));
article
.
put
(
Common
.
POST_TO_COMMUNITY
,
originalArticle
.
getBoolean
(
Common
.
POST_TO_COMMUNITY
));
article
.
put
(
Common
.
POST_TO_COMMUNITY
,
originalArticle
.
getBoolean
(
Common
.
POST_TO_COMMUNITY
));
// Removes this property avoid to persist
// Removes this property avoid to persist
...
...
src/main/java/org/b3log/solo/model/Article.java
View file @
e8235eef
...
@@ -25,7 +25,7 @@ import org.jsoup.safety.Whitelist;
...
@@ -25,7 +25,7 @@ import org.jsoup.safety.Whitelist;
* This class defines all article model relevant keys.
* This class defines all article model relevant keys.
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.
1.1.6, Jun 25, 2017
* @version 1.
2.0.0, Sep 16, 2018
* @since 0.3.1
* @since 0.3.1
*/
*/
public
final
class
Article
{
public
final
class
Article
{
...
@@ -55,20 +55,30 @@ public final class Article {
...
@@ -55,20 +55,30 @@ public final class Article {
*/
*/
public
static
final
String
ARTICLE_CONTENT
=
"articleContent"
;
public
static
final
String
ARTICLE_CONTENT
=
"articleContent"
;
/**
* Key of created at.
*/
public
static
final
String
ARTICLE_CREATED
=
"articleCreated"
;
/**
/**
* Key of create date.
* Key of create date.
*/
*/
public
static
final
String
ARTICLE_CREATE_DATE
=
"articleCreateDate"
;
public
static
final
String
ARTICLE_
T_
CREATE_DATE
=
"articleCreateDate"
;
/**
/**
* Key of create time.
* Key of create time.
*/
*/
public
static
final
String
ARTICLE_CREATE_TIME
=
"articleCreateTime"
;
public
static
final
String
ARTICLE_CREATE_TIME
=
"articleCreateTime"
;
/**
* Key of updated at.
*/
public
static
final
String
ARTICLE_UPDATED
=
"articleUpdated"
;
/**
/**
* Key of update date.
* Key of update date.
*/
*/
public
static
final
String
ARTICLE_UPDATE_DATE
=
"articleUpdateDate"
;
public
static
final
String
ARTICLE_
T_
UPDATE_DATE
=
"articleUpdateDate"
;
/**
/**
* Key of update time.
* Key of update time.
...
...
src/main/java/org/b3log/solo/processor/BlogProcessor.java
View file @
e8235eef
...
@@ -51,7 +51,7 @@ import java.util.Set;
...
@@ -51,7 +51,7 @@ import java.util.Set;
* Blog processor.
* Blog processor.
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.3.1.
3, Aug 2
, 2018
* @version 1.3.1.
4, Sep 16
, 2018
* @since 0.4.6
* @since 0.4.6
*/
*/
@RequestProcessor
@RequestProcessor
...
@@ -223,8 +223,8 @@ public class BlogProcessor {
...
@@ -223,8 +223,8 @@ public class BlogProcessor {
final
JSONArray
excludes
=
new
JSONArray
();
final
JSONArray
excludes
=
new
JSONArray
();
excludes
.
put
(
Article
.
ARTICLE_CONTENT
);
excludes
.
put
(
Article
.
ARTICLE_CONTENT
);
excludes
.
put
(
Article
.
ARTICLE_UPDATE
_DATE
);
excludes
.
put
(
Article
.
ARTICLE_UPDATE
D
);
excludes
.
put
(
Article
.
ARTICLE_CREATE
_DATE
);
excludes
.
put
(
Article
.
ARTICLE_CREATE
D
);
excludes
.
put
(
Article
.
ARTICLE_AUTHOR_EMAIL
);
excludes
.
put
(
Article
.
ARTICLE_AUTHOR_EMAIL
);
excludes
.
put
(
Article
.
ARTICLE_HAD_BEEN_PUBLISHED
);
excludes
.
put
(
Article
.
ARTICLE_HAD_BEEN_PUBLISHED
);
excludes
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
);
excludes
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
);
...
...
src/main/java/org/b3log/solo/processor/FeedProcessor.java
View file @
e8235eef
...
@@ -64,7 +64,7 @@ import java.util.List;
...
@@ -64,7 +64,7 @@ import java.util.List;
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="https://github.com/feroozkhanchintu">feroozkhanchintu</a>
* @author <a href="https://github.com/feroozkhanchintu">feroozkhanchintu</a>
* @author <a href="https://github.com/nanolikeyou">nanolikeyou</a>
* @author <a href="https://github.com/nanolikeyou">nanolikeyou</a>
* @version 1.1.1.
0, May 18
, 2018
* @version 1.1.1.
1, Sep 16
, 2018
* @since 0.3.1
* @since 0.3.1
*/
*/
@RequestProcessor
@RequestProcessor
...
@@ -142,8 +142,9 @@ public class FeedProcessor {
...
@@ -142,8 +142,9 @@ public class FeedProcessor {
filters
.
add
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
));
filters
.
add
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
));
filters
.
add
(
new
PropertyFilter
(
Article
.
ARTICLE_VIEW_PWD
,
FilterOperator
.
EQUAL
,
""
));
filters
.
add
(
new
PropertyFilter
(
Article
.
ARTICLE_VIEW_PWD
,
FilterOperator
.
EQUAL
,
""
));
final
Query
query
=
new
Query
().
setCurrentPageNum
(
1
).
setPageSize
(
outputCnt
).
setFilter
(
new
CompositeFilter
(
CompositeFilterOperator
.
AND
,
filters
)).
addSort
(
Article
.
ARTICLE_UPDATE_DATE
,
SortDirection
.
DESCENDING
).
setPageCount
(
final
Query
query
=
new
Query
().
setCurrentPageNum
(
1
).
setPageSize
(
outputCnt
).
1
);
setFilter
(
new
CompositeFilter
(
CompositeFilterOperator
.
AND
,
filters
)).
addSort
(
Article
.
ARTICLE_UPDATED
,
SortDirection
.
DESCENDING
).
setPageCount
(
1
);
final
boolean
hasMultipleUsers
=
userQueryService
.
hasMultipleUsers
();
final
boolean
hasMultipleUsers
=
userQueryService
.
hasMultipleUsers
();
String
authorName
=
""
;
String
authorName
=
""
;
...
@@ -184,8 +185,8 @@ public class FeedProcessor {
...
@@ -184,8 +185,8 @@ public class FeedProcessor {
final
String
summary
=
isFullContent
?
article
.
getString
(
Article
.
ARTICLE_CONTENT
)
final
String
summary
=
isFullContent
?
article
.
getString
(
Article
.
ARTICLE_CONTENT
)
:
article
.
optString
(
Article
.
ARTICLE_ABSTRACT
);
:
article
.
optString
(
Article
.
ARTICLE_ABSTRACT
);
ret
.
setSummary
(
summary
);
ret
.
setSummary
(
summary
);
final
Date
updated
=
(
Date
)
article
.
get
(
Article
.
ARTICLE_UPDATE_DATE
);
final
long
updated
=
article
.
getLong
(
Article
.
ARTICLE_UPDATED
);
ret
.
setUpdated
(
updated
);
ret
.
setUpdated
(
new
Date
(
updated
)
);
final
String
link
=
Latkes
.
getServePath
()
+
article
.
getString
(
Article
.
ARTICLE_PERMALINK
);
final
String
link
=
Latkes
.
getServePath
()
+
article
.
getString
(
Article
.
ARTICLE_PERMALINK
);
ret
.
setLink
(
link
);
ret
.
setLink
(
link
);
ret
.
setId
(
link
);
ret
.
setId
(
link
);
...
@@ -311,8 +312,8 @@ public class FeedProcessor {
...
@@ -311,8 +312,8 @@ public class FeedProcessor {
final
String
summary
=
isFullContent
?
article
.
getString
(
Article
.
ARTICLE_CONTENT
)
final
String
summary
=
isFullContent
?
article
.
getString
(
Article
.
ARTICLE_CONTENT
)
:
article
.
optString
(
Article
.
ARTICLE_ABSTRACT
);
:
article
.
optString
(
Article
.
ARTICLE_ABSTRACT
);
ret
.
setSummary
(
summary
);
ret
.
setSummary
(
summary
);
final
Date
updated
=
(
Date
)
article
.
get
(
Article
.
ARTICLE_UPDATE_DATE
);
final
long
updated
=
article
.
getLong
(
Article
.
ARTICLE_UPDATED
);
ret
.
setUpdated
(
updated
);
ret
.
setUpdated
(
new
Date
(
updated
)
);
final
String
link
=
Latkes
.
getServePath
()
+
article
.
getString
(
Article
.
ARTICLE_PERMALINK
);
final
String
link
=
Latkes
.
getServePath
()
+
article
.
getString
(
Article
.
ARTICLE_PERMALINK
);
ret
.
setLink
(
link
);
ret
.
setLink
(
link
);
ret
.
setId
(
link
);
ret
.
setId
(
link
);
...
@@ -371,8 +372,9 @@ public class FeedProcessor {
...
@@ -371,8 +372,9 @@ public class FeedProcessor {
filters
.
add
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
));
filters
.
add
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
));
filters
.
add
(
new
PropertyFilter
(
Article
.
ARTICLE_VIEW_PWD
,
FilterOperator
.
EQUAL
,
""
));
filters
.
add
(
new
PropertyFilter
(
Article
.
ARTICLE_VIEW_PWD
,
FilterOperator
.
EQUAL
,
""
));
final
Query
query
=
new
Query
().
setCurrentPageNum
(
1
).
setPageSize
(
outputCnt
).
setFilter
(
new
CompositeFilter
(
CompositeFilterOperator
.
AND
,
filters
)).
addSort
(
Article
.
ARTICLE_UPDATE_DATE
,
SortDirection
.
DESCENDING
).
setPageCount
(
final
Query
query
=
new
Query
().
setPageCount
(
1
).
setCurrentPageNum
(
1
).
setPageSize
(
outputCnt
).
1
);
setFilter
(
new
CompositeFilter
(
CompositeFilterOperator
.
AND
,
filters
)).
addSort
(
Article
.
ARTICLE_UPDATED
,
SortDirection
.
DESCENDING
);
final
JSONObject
articleResult
=
articleRepository
.
get
(
query
);
final
JSONObject
articleResult
=
articleRepository
.
get
(
query
);
final
JSONArray
articles
=
articleResult
.
getJSONArray
(
Keys
.
RESULTS
);
final
JSONArray
articles
=
articleResult
.
getJSONArray
(
Keys
.
RESULTS
);
...
@@ -416,8 +418,8 @@ public class FeedProcessor {
...
@@ -416,8 +418,8 @@ public class FeedProcessor {
:
article
.
optString
(
Article
.
ARTICLE_ABSTRACT
);
:
article
.
optString
(
Article
.
ARTICLE_ABSTRACT
);
description
=
Emotions
.
toAliases
(
description
);
description
=
Emotions
.
toAliases
(
description
);
ret
.
setDescription
(
description
);
ret
.
setDescription
(
description
);
final
Date
pubDate
=
(
Date
)
article
.
get
(
Article
.
ARTICLE_UPDATE_DATE
);
final
long
pubDate
=
article
.
getLong
(
Article
.
ARTICLE_UPDATED
);
ret
.
setPubDate
(
pubDate
);
ret
.
setPubDate
(
new
Date
(
pubDate
)
);
final
String
link
=
Latkes
.
getServePath
()
+
article
.
getString
(
Article
.
ARTICLE_PERMALINK
);
final
String
link
=
Latkes
.
getServePath
()
+
article
.
getString
(
Article
.
ARTICLE_PERMALINK
);
ret
.
setLink
(
link
);
ret
.
setLink
(
link
);
ret
.
setGUID
(
link
);
ret
.
setGUID
(
link
);
...
@@ -549,8 +551,8 @@ public class FeedProcessor {
...
@@ -549,8 +551,8 @@ public class FeedProcessor {
?
article
.
getString
(
Article
.
ARTICLE_CONTENT
)
?
article
.
getString
(
Article
.
ARTICLE_CONTENT
)
:
article
.
optString
(
Article
.
ARTICLE_ABSTRACT
);
:
article
.
optString
(
Article
.
ARTICLE_ABSTRACT
);
ret
.
setDescription
(
description
);
ret
.
setDescription
(
description
);
final
Date
pubDate
=
(
Date
)
article
.
get
(
Article
.
ARTICLE_UPDATE_DATE
);
final
long
pubDate
=
article
.
getLong
(
Article
.
ARTICLE_UPDATED
);
ret
.
setPubDate
(
pubDate
);
ret
.
setPubDate
(
new
Date
(
pubDate
)
);
final
String
link
=
Latkes
.
getServePath
()
+
article
.
getString
(
Article
.
ARTICLE_PERMALINK
);
final
String
link
=
Latkes
.
getServePath
()
+
article
.
getString
(
Article
.
ARTICLE_PERMALINK
);
ret
.
setLink
(
link
);
ret
.
setLink
(
link
);
ret
.
setGUID
(
link
);
ret
.
setGUID
(
link
);
...
...
src/main/java/org/b3log/solo/processor/SitemapProcessor.java
View file @
e8235eef
...
@@ -57,7 +57,7 @@ import java.util.Date;
...
@@ -57,7 +57,7 @@ import java.util.Date;
* Site map (sitemap) processor.
* Site map (sitemap) processor.
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.0.2.
1, Aug 2
, 2018
* @version 1.0.2.
2, Sep 16
, 2018
* @since 0.3.1
* @since 0.3.1
*/
*/
@RequestProcessor
@RequestProcessor
...
@@ -142,9 +142,9 @@ public class SitemapProcessor {
...
@@ -142,9 +142,9 @@ public class SitemapProcessor {
private
void
addArticles
(
final
Sitemap
sitemap
)
throws
Exception
{
private
void
addArticles
(
final
Sitemap
sitemap
)
throws
Exception
{
final
Query
query
=
new
Query
().
setCurrentPageNum
(
1
).
final
Query
query
=
new
Query
().
setCurrentPageNum
(
1
).
setFilter
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
)).
setFilter
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
)).
addSort
(
Article
.
ARTICLE_CREATE
_DATE
,
SortDirection
.
DESCENDING
).
addSort
(
Article
.
ARTICLE_CREATE
D
,
SortDirection
.
DESCENDING
).
addProjection
(
Article
.
ARTICLE_PERMALINK
,
String
.
class
).
addProjection
(
Article
.
ARTICLE_PERMALINK
,
String
.
class
).
addProjection
(
Article
.
ARTICLE_UPDATE
_DATE
,
Date
.
class
);
addProjection
(
Article
.
ARTICLE_UPDATE
D
,
Long
.
class
);
final
JSONObject
articleResult
=
articleRepository
.
get
(
query
);
final
JSONObject
articleResult
=
articleRepository
.
get
(
query
);
final
JSONArray
articles
=
articleResult
.
getJSONArray
(
Keys
.
RESULTS
);
final
JSONArray
articles
=
articleResult
.
getJSONArray
(
Keys
.
RESULTS
);
...
@@ -154,8 +154,8 @@ public class SitemapProcessor {
...
@@ -154,8 +154,8 @@ public class SitemapProcessor {
final
URL
url
=
new
URL
();
final
URL
url
=
new
URL
();
url
.
setLoc
(
StringEscapeUtils
.
escapeXml
(
Latkes
.
getServePath
()
+
permalink
));
url
.
setLoc
(
StringEscapeUtils
.
escapeXml
(
Latkes
.
getServePath
()
+
permalink
));
final
Date
updateDate
=
(
Date
)
article
.
get
(
Article
.
ARTICLE_UPDATE_DATE
);
final
long
updated
=
article
.
getLong
(
Article
.
ARTICLE_UPDATED
);
final
String
lastMod
=
DateFormatUtils
.
ISO_DATETIME_TIME_ZONE_FORMAT
.
format
(
update
Date
);
final
String
lastMod
=
DateFormatUtils
.
ISO_DATETIME_TIME_ZONE_FORMAT
.
format
(
update
d
);
url
.
setLastMod
(
lastMod
);
url
.
setLastMod
(
lastMod
);
sitemap
.
addURL
(
url
);
sitemap
.
addURL
(
url
);
...
...
src/main/java/org/b3log/solo/processor/console/ArticleConsole.java
View file @
e8235eef
...
@@ -55,7 +55,7 @@ import java.util.stream.Collectors;
...
@@ -55,7 +55,7 @@ import java.util.stream.Collectors;
* Article console request processing.
* Article console request processing.
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.1.1.
0, Sep 10
, 2018
* @version 1.1.1.
1, Sep 16
, 2018
* @since 0.4.0
* @since 0.4.0
*/
*/
@RequestProcessor
@RequestProcessor
...
@@ -306,8 +306,8 @@ public class ArticleConsole {
...
@@ -306,8 +306,8 @@ public class ArticleConsole {
final
JSONArray
excludes
=
new
JSONArray
();
final
JSONArray
excludes
=
new
JSONArray
();
excludes
.
put
(
Article
.
ARTICLE_CONTENT
);
excludes
.
put
(
Article
.
ARTICLE_CONTENT
);
excludes
.
put
(
Article
.
ARTICLE_UPDATE
_DATE
);
excludes
.
put
(
Article
.
ARTICLE_UPDATE
D
);
excludes
.
put
(
Article
.
ARTICLE_CREATE
_DATE
);
excludes
.
put
(
Article
.
ARTICLE_CREATE
D
);
excludes
.
put
(
Article
.
ARTICLE_AUTHOR_EMAIL
);
excludes
.
put
(
Article
.
ARTICLE_AUTHOR_EMAIL
);
excludes
.
put
(
Article
.
ARTICLE_HAD_BEEN_PUBLISHED
);
excludes
.
put
(
Article
.
ARTICLE_HAD_BEEN_PUBLISHED
);
excludes
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
);
excludes
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
);
...
...
src/main/java/org/b3log/solo/processor/util/Filler.java
View file @
e8235eef
...
@@ -66,7 +66,7 @@ import static org.b3log.solo.model.Article.ARTICLE_CONTENT;
...
@@ -66,7 +66,7 @@ import static org.b3log.solo.model.Article.ARTICLE_CONTENT;
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @version 1.6.16.
6
, Sep 16, 2018
* @version 1.6.16.
7
, Sep 16, 2018
* @since 0.3.1
* @since 0.3.1
*/
*/
@Service
@Service
...
@@ -217,15 +217,15 @@ public class Filler {
...
@@ -217,15 +217,15 @@ public class Filler {
}
else
// See https://github.com/b3log/solo/issues/179 for more details
}
else
// See https://github.com/b3log/solo/issues/179 for more details
if
(
Templates
.
hasExpression
(
template
,
"<#list articles1 as article>"
))
{
if
(
Templates
.
hasExpression
(
template
,
"<#list articles1 as article>"
))
{
isArticles1
=
true
;
isArticles1
=
true
;
query
.
addSort
(
Article
.
ARTICLE_CREATE
_DATE
,
SortDirection
.
DESCENDING
);
query
.
addSort
(
Article
.
ARTICLE_CREATE
D
,
SortDirection
.
DESCENDING
);
LOGGER
.
trace
(
"Query ${articles1} in index.ftl"
);
LOGGER
.
trace
(
"Query ${articles1} in index.ftl"
);
}
else
{
// <#list articles as article>
}
else
{
// <#list articles as article>
query
.
addSort
(
Article
.
ARTICLE_PUT_TOP
,
SortDirection
.
DESCENDING
);
query
.
addSort
(
Article
.
ARTICLE_PUT_TOP
,
SortDirection
.
DESCENDING
);
if
(
preference
.
getBoolean
(
Option
.
ID_C_ENABLE_ARTICLE_UPDATE_HINT
))
{
if
(
preference
.
getBoolean
(
Option
.
ID_C_ENABLE_ARTICLE_UPDATE_HINT
))
{
query
.
addSort
(
Article
.
ARTICLE_UPDATE
_DATE
,
SortDirection
.
DESCENDING
);
query
.
addSort
(
Article
.
ARTICLE_UPDATE
D
,
SortDirection
.
DESCENDING
);
}
else
{
}
else
{
query
.
addSort
(
Article
.
ARTICLE_CREATE
_DATE
,
SortDirection
.
DESCENDING
);
query
.
addSort
(
Article
.
ARTICLE_CREATE
D
,
SortDirection
.
DESCENDING
);
}
}
}
}
...
...
src/main/java/org/b3log/solo/repository/impl/ArticleRepositoryImpl.java
View file @
e8235eef
...
@@ -31,14 +31,13 @@ import org.json.JSONException;
...
@@ -31,14 +31,13 @@ import org.json.JSONException;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
/**
/**
* Article repository.
* Article repository.
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.1.3.1
3, Aug 27
, 2018
* @version 1.1.3.1
4, Sep 16
, 2018
* @since 0.3.1
* @since 0.3.1
*/
*/
@Repository
@Repository
...
@@ -106,7 +105,7 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
...
@@ -106,7 +105,7 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
setFilter
(
CompositeFilterOperator
.
and
(
setFilter
(
CompositeFilterOperator
.
and
(
new
PropertyFilter
(
Article
.
ARTICLE_AUTHOR_EMAIL
,
FilterOperator
.
EQUAL
,
authorEmail
),
new
PropertyFilter
(
Article
.
ARTICLE_AUTHOR_EMAIL
,
FilterOperator
.
EQUAL
,
authorEmail
),
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
))).
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
))).
addSort
(
Article
.
ARTICLE_UPDATE
_DATE
,
SortDirection
.
DESCENDING
).
addSort
(
Article
.
ARTICLE_PUT_TOP
,
SortDirection
.
DESCENDING
).
addSort
(
Article
.
ARTICLE_UPDATE
D
,
SortDirection
.
DESCENDING
).
addSort
(
Article
.
ARTICLE_PUT_TOP
,
SortDirection
.
DESCENDING
).
setCurrentPageNum
(
currentPageNum
).
setPageSize
(
pageSize
).
setPageCount
(
1
);
setCurrentPageNum
(
currentPageNum
).
setPageSize
(
pageSize
).
setPageCount
(
1
);
return
get
(
query
);
return
get
(
query
);
...
@@ -139,7 +138,7 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
...
@@ -139,7 +138,7 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
public
List
<
JSONObject
>
getRecentArticles
(
final
int
fetchSize
)
throws
RepositoryException
{
public
List
<
JSONObject
>
getRecentArticles
(
final
int
fetchSize
)
throws
RepositoryException
{
final
Query
query
=
new
Query
().
final
Query
query
=
new
Query
().
setFilter
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
)).
setFilter
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
)).
addSort
(
Article
.
ARTICLE_UPDATE
_DATE
,
SortDirection
.
DESCENDING
).
addSort
(
Article
.
ARTICLE_UPDATE
D
,
SortDirection
.
DESCENDING
).
setCurrentPageNum
(
1
).
setPageSize
(
fetchSize
).
setPageCount
(
1
);
setCurrentPageNum
(
1
).
setPageSize
(
fetchSize
).
setPageCount
(
1
);
return
getList
(
query
);
return
getList
(
query
);
...
@@ -149,7 +148,7 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
...
@@ -149,7 +148,7 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
public
List
<
JSONObject
>
getMostCommentArticles
(
final
int
num
)
throws
RepositoryException
{
public
List
<
JSONObject
>
getMostCommentArticles
(
final
int
num
)
throws
RepositoryException
{
final
Query
query
=
new
Query
().
final
Query
query
=
new
Query
().
addSort
(
Article
.
ARTICLE_COMMENT_COUNT
,
SortDirection
.
DESCENDING
).
addSort
(
Article
.
ARTICLE_COMMENT_COUNT
,
SortDirection
.
DESCENDING
).
addSort
(
Article
.
ARTICLE_UPDATE
_DATE
,
SortDirection
.
DESCENDING
).
addSort
(
Article
.
ARTICLE_UPDATE
D
,
SortDirection
.
DESCENDING
).
setFilter
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
)).
setFilter
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
)).
setCurrentPageNum
(
1
).
setPageSize
(
num
).
setPageCount
(
1
);
setCurrentPageNum
(
1
).
setPageSize
(
num
).
setPageCount
(
1
);
...
@@ -160,7 +159,7 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
...
@@ -160,7 +159,7 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
public
List
<
JSONObject
>
getMostViewCountArticles
(
final
int
num
)
throws
RepositoryException
{
public
List
<
JSONObject
>
getMostViewCountArticles
(
final
int
num
)
throws
RepositoryException
{
final
Query
query
=
new
Query
().
final
Query
query
=
new
Query
().
addSort
(
Article
.
ARTICLE_VIEW_COUNT
,
SortDirection
.
DESCENDING
).
addSort
(
Article
.
ARTICLE_VIEW_COUNT
,
SortDirection
.
DESCENDING
).
addSort
(
Article
.
ARTICLE_UPDATE
_DATE
,
SortDirection
.
DESCENDING
).
addSort
(
Article
.
ARTICLE_UPDATE
D
,
SortDirection
.
DESCENDING
).
setFilter
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
)).
setFilter
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
)).
setCurrentPageNum
(
1
).
setPageSize
(
num
).
setPageCount
(
1
);
setCurrentPageNum
(
1
).
setPageSize
(
num
).
setPageCount
(
1
);
...
@@ -170,13 +169,13 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
...
@@ -170,13 +169,13 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
@Override
@Override
public
JSONObject
getPreviousArticle
(
final
String
articleId
)
throws
RepositoryException
{
public
JSONObject
getPreviousArticle
(
final
String
articleId
)
throws
RepositoryException
{
final
JSONObject
currentArticle
=
get
(
articleId
);
final
JSONObject
currentArticle
=
get
(
articleId
);
final
Date
currentArticleCreateDate
=
(
Date
)
currentArticle
.
opt
(
Article
.
ARTICLE_CREATE_DATE
);
final
long
currentArticleCreated
=
currentArticle
.
optLong
(
Article
.
ARTICLE_CREATED
);
final
Query
query
=
new
Query
().
final
Query
query
=
new
Query
().
setFilter
(
CompositeFilterOperator
.
and
(
setFilter
(
CompositeFilterOperator
.
and
(
new
PropertyFilter
(
Article
.
ARTICLE_CREATE
_DATE
,
FilterOperator
.
LESS_THAN
,
currentArticleCreateDate
),
new
PropertyFilter
(
Article
.
ARTICLE_CREATE
D
,
FilterOperator
.
LESS_THAN
,
currentArticleCreated
),
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
))).
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
))).
addSort
(
Article
.
ARTICLE_CREATE
_DATE
,
SortDirection
.
DESCENDING
).
addSort
(
Article
.
ARTICLE_CREATE
D
,
SortDirection
.
DESCENDING
).
setCurrentPageNum
(
1
).
setPageSize
(
1
).
setPageCount
(
1
).
setCurrentPageNum
(
1
).
setPageSize
(
1
).
setPageCount
(
1
).
addProjection
(
Article
.
ARTICLE_TITLE
,
String
.
class
).
addProjection
(
Article
.
ARTICLE_TITLE
,
String
.
class
).
addProjection
(
Article
.
ARTICLE_PERMALINK
,
String
.
class
).
addProjection
(
Article
.
ARTICLE_PERMALINK
,
String
.
class
).
...
@@ -205,13 +204,13 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
...
@@ -205,13 +204,13 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
@Override
@Override
public
JSONObject
getNextArticle
(
final
String
articleId
)
throws
RepositoryException
{
public
JSONObject
getNextArticle
(
final
String
articleId
)
throws
RepositoryException
{
final
JSONObject
currentArticle
=
get
(
articleId
);
final
JSONObject
currentArticle
=
get
(
articleId
);
final
Date
currentArticleCreateDate
=
(
Date
)
currentArticle
.
opt
(
Article
.
ARTICLE_CREATE_DATE
);
final
long
currentArticleCreated
=
currentArticle
.
optLong
(
Article
.
ARTICLE_CREATED
);
final
Query
query
=
new
Query
().
final
Query
query
=
new
Query
().
setFilter
(
CompositeFilterOperator
.
and
(
setFilter
(
CompositeFilterOperator
.
and
(
new
PropertyFilter
(
Article
.
ARTICLE_CREATE
_DATE
,
FilterOperator
.
GREATER_THAN
,
currentArticleCreateDate
),
new
PropertyFilter
(
Article
.
ARTICLE_CREATE
D
,
FilterOperator
.
GREATER_THAN
,
currentArticleCreated
),
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
))).
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
))).
addSort
(
Article
.
ARTICLE_CREATE
_DATE
,
SortDirection
.
ASCENDING
).
addSort
(
Article
.
ARTICLE_CREATE
D
,
SortDirection
.
ASCENDING
).
setCurrentPageNum
(
1
).
setPageSize
(
1
).
setPageCount
(
1
).
setCurrentPageNum
(
1
).
setPageSize
(
1
).
setPageCount
(
1
).
addProjection
(
Article
.
ARTICLE_TITLE
,
String
.
class
).
addProjection
(
Article
.
ARTICLE_TITLE
,
String
.
class
).
addProjection
(
Article
.
ARTICLE_PERMALINK
,
String
.
class
).
addProjection
(
Article
.
ARTICLE_PERMALINK
,
String
.
class
).
...
...
src/main/java/org/b3log/solo/service/ArticleMgmtService.java
View file @
e8235eef
...
@@ -45,7 +45,6 @@ import org.json.JSONObject;
...
@@ -45,7 +45,6 @@ import org.json.JSONObject;
import
java.text.ParseException
;
import
java.text.ParseException
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
static
org
.
b3log
.
solo
.
model
.
Article
.*;
import
static
org
.
b3log
.
solo
.
model
.
Article
.*;
...
@@ -54,7 +53,7 @@ import static org.b3log.solo.model.Article.*;
...
@@ -54,7 +53,7 @@ import static org.b3log.solo.model.Article.*;
* Article management service.
* Article management service.
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.2.2.1
1, Aug 27
, 2018
* @version 1.2.2.1
2, Sep 16
, 2018
* @since 0.3.5
* @since 0.3.5
*/
*/
@Service
@Service
...
@@ -297,7 +296,7 @@ public class ArticleMgmtService {
...
@@ -297,7 +296,7 @@ public class ArticleMgmtService {
final
String
articleId
=
article
.
getString
(
Keys
.
OBJECT_ID
);
final
String
articleId
=
article
.
getString
(
Keys
.
OBJECT_ID
);
// Set permalink
// Set permalink
final
JSONObject
oldArticle
=
articleRepository
.
get
(
articleId
);
final
JSONObject
oldArticle
=
articleRepository
.
get
(
articleId
);
final
String
permalink
=
getPermalinkForUpdateArticle
(
oldArticle
,
article
,
(
Date
)
oldArticle
.
get
(
ARTICLE_CREATE_DATE
));
final
String
permalink
=
getPermalinkForUpdateArticle
(
oldArticle
,
article
,
oldArticle
.
optLong
(
ARTICLE_CREATED
));
article
.
put
(
ARTICLE_PERMALINK
,
permalink
);
article
.
put
(
ARTICLE_PERMALINK
,
permalink
);
processTagsForArticleUpdate
(
oldArticle
,
article
);
processTagsForArticleUpdate
(
oldArticle
,
article
);
...
@@ -310,9 +309,9 @@ public class ArticleMgmtService {
...
@@ -310,9 +309,9 @@ public class ArticleMgmtService {
// Fill auto properties
// Fill auto properties
fillAutoProperties
(
oldArticle
,
article
);
fillAutoProperties
(
oldArticle
,
article
);
// Set date
// Set date
article
.
put
(
ARTICLE_UPDATE
_DATE
,
oldArticle
.
get
(
ARTICLE_UPDATE_DATE
));
article
.
put
(
ARTICLE_UPDATE
D
,
oldArticle
.
getLong
(
ARTICLE_UPDATED
));
final
JSONObject
preference
=
preferenceQueryService
.
getPreference
();
final
JSONObject
preference
=
preferenceQueryService
.
getPreference
();
final
Date
date
=
new
Date
();
final
long
now
=
System
.
currentTimeMillis
();
// The article to update has no sign
// The article to update has no sign
if
(!
article
.
has
(
Article
.
ARTICLE_SIGN_ID
))
{
if
(!
article
.
has
(
Article
.
ARTICLE_SIGN_ID
))
{
...
@@ -322,20 +321,20 @@ public class ArticleMgmtService {
...
@@ -322,20 +321,20 @@ public class ArticleMgmtService {
if
(
article
.
getBoolean
(
ARTICLE_IS_PUBLISHED
))
{
// Publish it
if
(
article
.
getBoolean
(
ARTICLE_IS_PUBLISHED
))
{
// Publish it
if
(
articleQueryService
.
hadBeenPublished
(
oldArticle
))
{
if
(
articleQueryService
.
hadBeenPublished
(
oldArticle
))
{
// Edit update date only for published article
// Edit update date only for published article
article
.
put
(
ARTICLE_UPDATE
_DATE
,
date
);
article
.
put
(
ARTICLE_UPDATE
D
,
now
);
}
else
{
// This article is a draft and this is the first time to publish it
}
else
{
// This article is a draft and this is the first time to publish it
article
.
put
(
ARTICLE_CREATE
_DATE
,
date
);
article
.
put
(
ARTICLE_CREATE
D
,
now
);
article
.
put
(
ARTICLE_UPDATE
_DATE
,
date
);
article
.
put
(
ARTICLE_UPDATE
D
,
now
);
article
.
put
(
ARTICLE_HAD_BEEN_PUBLISHED
,
true
);
article
.
put
(
ARTICLE_HAD_BEEN_PUBLISHED
,
true
);
}
}
}
else
{
// Save as draft
}
else
{
// Save as draft
if
(
articleQueryService
.
hadBeenPublished
(
oldArticle
))
{
if
(
articleQueryService
.
hadBeenPublished
(
oldArticle
))
{
// Save update date only for published article
// Save update date only for published article
article
.
put
(
ARTICLE_UPDATE
_DATE
,
date
);
article
.
put
(
ARTICLE_UPDATE
D
,
now
);
}
else
{
}
else
{
// Reset create/update date to indicate this is an new draft
// Reset create/update date to indicate this is an new draft
article
.
put
(
ARTICLE_CREATE
_DATE
,
date
);
article
.
put
(
ARTICLE_CREATE
D
,
now
);
article
.
put
(
ARTICLE_UPDATE
_DATE
,
date
);
article
.
put
(
ARTICLE_UPDATE
D
,
now
);
}
}
}
}
...
@@ -487,12 +486,10 @@ public class ArticleMgmtService {
...
@@ -487,12 +486,10 @@ public class ArticleMgmtService {
article
.
put
(
Article
.
ARTICLE_VIEW_COUNT
,
0
);
article
.
put
(
Article
.
ARTICLE_VIEW_COUNT
,
0
);
// Step 3: Set create/updat date
// Step 3: Set create/updat date
final
JSONObject
preference
=
preferenceQueryService
.
getPreference
();
final
JSONObject
preference
=
preferenceQueryService
.
getPreference
();
final
Date
date
=
new
Date
();
if
(!
article
.
has
(
Article
.
ARTICLE_CREATED
))
{
article
.
put
(
Article
.
ARTICLE_CREATED
,
System
.
currentTimeMillis
());
if
(!
article
.
has
(
Article
.
ARTICLE_CREATE_DATE
))
{
article
.
put
(
Article
.
ARTICLE_CREATE_DATE
,
date
);
}
}
article
.
put
(
Article
.
ARTICLE_UPDATE
_DATE
,
article
.
opt
(
Article
.
ARTICLE_CREATE_DATE
));
article
.
put
(
Article
.
ARTICLE_UPDATE
D
,
article
.
optLong
(
Article
.
ARTICLE_CREATED
));
// Step 4: Set put top to false
// Step 4: Set put top to false
article
.
put
(
Article
.
ARTICLE_PUT_TOP
,
false
);
article
.
put
(
Article
.
ARTICLE_PUT_TOP
,
false
);
// Step 5: Add tag-article relations
// Step 5: Add tag-article relations
...
@@ -1042,8 +1039,8 @@ public class ArticleMgmtService {
...
@@ -1042,8 +1039,8 @@ public class ArticleMgmtService {
* @throws RepositoryException repository exception
* @throws RepositoryException repository exception
*/
*/
private
void
archiveDate
(
final
JSONObject
article
)
throws
RepositoryException
{
private
void
archiveDate
(
final
JSONObject
article
)
throws
RepositoryException
{
final
Date
createDate
=
(
Date
)
article
.
opt
(
Article
.
ARTICLE_CREATE_DATE
);
final
long
created
=
article
.
optLong
(
Article
.
ARTICLE_CREATED
);
final
String
createDateString
=
DateFormatUtils
.
format
(
create
Date
,
"yyyy/MM"
);
final
String
createDateString
=
DateFormatUtils
.
format
(
create
d
,
"yyyy/MM"
);
JSONObject
archiveDate
=
archiveDateRepository
.
getByArchiveDate
(
createDateString
);
JSONObject
archiveDate
=
archiveDateRepository
.
getByArchiveDate
(
createDateString
);
if
(
null
==
archiveDate
)
{
if
(
null
==
archiveDate
)
{
...
@@ -1093,9 +1090,8 @@ public class ArticleMgmtService {
...
@@ -1093,9 +1090,8 @@ public class ArticleMgmtService {
* @throws JSONException json exception
* @throws JSONException json exception
*/
*/
private
void
fillAutoProperties
(
final
JSONObject
oldArticle
,
final
JSONObject
article
)
throws
JSONException
{
private
void
fillAutoProperties
(
final
JSONObject
oldArticle
,
final
JSONObject
article
)
throws
JSONException
{
final
Date
createDate
=
(
Date
)
oldArticle
.
get
(
ARTICLE_CREATE_DATE
);
final
long
created
=
oldArticle
.
getLong
(
ARTICLE_CREATED
);
article
.
put
(
ARTICLE_CREATED
,
created
);
article
.
put
(
ARTICLE_CREATE_DATE
,
createDate
);
article
.
put
(
ARTICLE_COMMENT_COUNT
,
oldArticle
.
getInt
(
ARTICLE_COMMENT_COUNT
));
article
.
put
(
ARTICLE_COMMENT_COUNT
,
oldArticle
.
getInt
(
ARTICLE_COMMENT_COUNT
));
article
.
put
(
ARTICLE_VIEW_COUNT
,
oldArticle
.
getInt
(
ARTICLE_VIEW_COUNT
));
article
.
put
(
ARTICLE_VIEW_COUNT
,
oldArticle
.
getInt
(
ARTICLE_VIEW_COUNT
));
article
.
put
(
ARTICLE_PUT_TOP
,
oldArticle
.
getBoolean
(
ARTICLE_PUT_TOP
));
article
.
put
(
ARTICLE_PUT_TOP
,
oldArticle
.
getBoolean
(
ARTICLE_PUT_TOP
));
...
@@ -1112,10 +1108,8 @@ public class ArticleMgmtService {
...
@@ -1112,10 +1108,8 @@ public class ArticleMgmtService {
* @throws ServiceException if invalid permalink occurs
* @throws ServiceException if invalid permalink occurs
*/
*/
private
String
getPermalinkForAddArticle
(
final
JSONObject
article
)
throws
ServiceException
{
private
String
getPermalinkForAddArticle
(
final
JSONObject
article
)
throws
ServiceException
{
final
Date
date
=
(
Date
)
article
.
opt
(
Article
.
ARTICLE_CREATE_DATE
);
final
long
date
=
article
.
optLong
(
Article
.
ARTICLE_CREATED
);
String
ret
=
article
.
optString
(
Article
.
ARTICLE_PERMALINK
);
String
ret
=
article
.
optString
(
Article
.
ARTICLE_PERMALINK
);
if
(
StringUtils
.
isBlank
(
ret
))
{
if
(
StringUtils
.
isBlank
(
ret
))
{
ret
=
"/articles/"
+
DateFormatUtils
.
format
(
date
,
"yyyy/MM/dd"
)
+
"/"
+
article
.
optString
(
Keys
.
OBJECT_ID
)
+
".html"
;
ret
=
"/articles/"
+
DateFormatUtils
.
format
(
date
,
"yyyy/MM/dd"
)
+
"/"
+
article
.
optString
(
Keys
.
OBJECT_ID
)
+
".html"
;
}
}
...
@@ -1136,16 +1130,16 @@ public class ArticleMgmtService {
...
@@ -1136,16 +1130,16 @@ public class ArticleMgmtService {
}
}
/**
/**
* Gets article permalink for updating article with the specified old article, article, create
date
.
* Gets article permalink for updating article with the specified old article, article, create
d at
.
*
*
* @param oldArticle the specified old article
* @param oldArticle the specified old article
* @param article the specified article
* @param article the specified article
* @param create
Date the specified create date
* @param create
d the specified created
* @return permalink
* @return permalink
* @throws ServiceException if invalid permalink occurs
* @throws ServiceException if invalid permalink occurs
* @throws JSONException json exception
* @throws JSONException json exception
*/
*/
private
String
getPermalinkForUpdateArticle
(
final
JSONObject
oldArticle
,
final
JSONObject
article
,
final
Date
createDate
)
private
String
getPermalinkForUpdateArticle
(
final
JSONObject
oldArticle
,
final
JSONObject
article
,
final
long
created
)
throws
ServiceException
,
JSONException
{
throws
ServiceException
,
JSONException
{
final
String
articleId
=
article
.
getString
(
Keys
.
OBJECT_ID
);
final
String
articleId
=
article
.
getString
(
Keys
.
OBJECT_ID
);
String
ret
=
article
.
optString
(
ARTICLE_PERMALINK
).
trim
();
String
ret
=
article
.
optString
(
ARTICLE_PERMALINK
).
trim
();
...
@@ -1153,7 +1147,7 @@ public class ArticleMgmtService {
...
@@ -1153,7 +1147,7 @@ public class ArticleMgmtService {
if
(!
oldPermalink
.
equals
(
ret
))
{
if
(!
oldPermalink
.
equals
(
ret
))
{
if
(
StringUtils
.
isBlank
(
ret
))
{
if
(
StringUtils
.
isBlank
(
ret
))
{
ret
=
"/articles/"
+
DateFormatUtils
.
format
(
create
Date
,
"yyyy/MM/dd"
)
+
"/"
+
articleId
+
".html"
;
ret
=
"/articles/"
+
DateFormatUtils
.
format
(
create
d
,
"yyyy/MM/dd"
)
+
"/"
+
articleId
+
".html"
;
}
}
if
(!
ret
.
startsWith
(
"/"
))
{
if
(!
ret
.
startsWith
(
"/"
))
{
...
...
src/main/java/org/b3log/solo/service/ArticleQueryService.java
View file @
e8235eef
...
@@ -54,7 +54,7 @@ import static org.b3log.solo.model.Article.*;
...
@@ -54,7 +54,7 @@ import static org.b3log.solo.model.Article.*;
* @author <a href="http://blog.sweelia.com">ArmstrongCN</a>
* @author <a href="http://blog.sweelia.com">ArmstrongCN</a>
* @author <a href="http://zephyr.b3log.org">Zephyr</a>
* @author <a href="http://zephyr.b3log.org">Zephyr</a>
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @version 1.3.2.
3, Aug 27
, 2018
* @version 1.3.2.
4, Sep 16
, 2018
* @since 0.3.5
* @since 0.3.5
*/
*/
@Service
@Service
...
@@ -144,12 +144,11 @@ public class ArticleQueryService {
...
@@ -144,12 +144,11 @@ public class ArticleQueryService {
try
{
try
{
final
Query
query
=
new
Query
().
setFilter
(
final
Query
query
=
new
Query
().
setFilter
(
CompositeFilterOperator
.
and
(
CompositeFilterOperator
.
and
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
),
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
),
CompositeFilterOperator
.
or
(
CompositeFilterOperator
.
or
(
new
PropertyFilter
(
Article
.
ARTICLE_TITLE
,
FilterOperator
.
LIKE
,
"%"
+
keyword
+
"%"
),
new
PropertyFilter
(
Article
.
ARTICLE_TITLE
,
FilterOperator
.
LIKE
,
"%"
+
keyword
+
"%"
),
new
PropertyFilter
(
Article
.
ARTICLE_CONTENT
,
FilterOperator
.
LIKE
,
"%"
+
keyword
+
"%"
))
new
PropertyFilter
(
Article
.
ARTICLE_CONTENT
,
FilterOperator
.
LIKE
,
"%"
+
keyword
+
"%"
))
)).
)).
addSort
(
Article
.
ARTICLE_UPDATE_DATE
,
SortDirection
.
DESCENDING
).
setCurrentPageNum
(
currentPageNum
).
setPageSize
(
pageSize
);
addSort
(
Article
.
ARTICLE_UPDATED
,
SortDirection
.
DESCENDING
).
setCurrentPageNum
(
currentPageNum
).
setPageSize
(
pageSize
);
final
JSONObject
result
=
articleRepository
.
get
(
query
);
final
JSONObject
result
=
articleRepository
.
get
(
query
);
...
@@ -238,7 +237,7 @@ public class ArticleQueryService {
...
@@ -238,7 +237,7 @@ public class ArticleQueryService {
continue
;
continue
;
}
}
article
.
put
(
ARTICLE_CREATE_TIME
,
((
Date
)
article
.
opt
(
ARTICLE_CREATE_DATE
)).
getTime
(
));
article
.
put
(
ARTICLE_CREATE_TIME
,
article
.
optLong
(
ARTICLE_CREATED
));
articles
.
add
(
article
);
articles
.
add
(
article
);
}
}
...
@@ -328,14 +327,13 @@ public class ArticleQueryService {
...
@@ -328,14 +327,13 @@ public class ArticleQueryService {
public
long
getRecentArticleTime
()
throws
ServiceException
{
public
long
getRecentArticleTime
()
throws
ServiceException
{
try
{
try
{
final
List
<
JSONObject
>
recentArticles
=
articleRepository
.
getRecentArticles
(
1
);
final
List
<
JSONObject
>
recentArticles
=
articleRepository
.
getRecentArticles
(
1
);
if
(
recentArticles
.
isEmpty
())
{
if
(
recentArticles
.
isEmpty
())
{
return
0
;
return
0
;
}
}
final
JSONObject
recentArticle
=
recentArticles
.
get
(
0
);
final
JSONObject
recentArticle
=
recentArticles
.
get
(
0
);
return
((
Date
)
recentArticle
.
get
(
Article
.
ARTICLE_UPDATE_DATE
)).
getTime
(
);
return
recentArticle
.
getLong
(
Article
.
ARTICLE_UPDATED
);
}
catch
(
final
Exception
e
)
{
}
catch
(
final
Exception
e
)
{
LOGGER
.
log
(
Level
.
ERROR
,
e
.
getMessage
(),
e
);
LOGGER
.
log
(
Level
.
ERROR
,
e
.
getMessage
(),
e
);
throw
new
ServiceException
(
"Gets recent article time failed"
);
throw
new
ServiceException
(
"Gets recent article time failed"
);
...
@@ -422,10 +420,10 @@ public class ArticleQueryService {
...
@@ -422,10 +420,10 @@ public class ArticleQueryService {
* @throws JSONException json exception
* @throws JSONException json exception
*/
*/
public
boolean
hasUpdated
(
final
JSONObject
article
)
throws
JSONException
{
public
boolean
hasUpdated
(
final
JSONObject
article
)
throws
JSONException
{
final
Date
updateDate
=
(
Date
)
article
.
get
(
Article
.
ARTICLE_UPDATE_DATE
);
final
long
updateDate
=
article
.
getLong
(
Article
.
ARTICLE_UPDATED
);
final
Date
createDate
=
(
Date
)
article
.
get
(
Article
.
ARTICLE_CREATE_DATE
);
final
long
createDate
=
article
.
getLong
(
Article
.
ARTICLE_CREATED
);
return
!
createDate
.
equals
(
updateDate
)
;
return
createDate
!=
updateDate
;
}
}
/**
/**
...
@@ -447,8 +445,7 @@ public class ArticleQueryService {
...
@@ -447,8 +445,7 @@ public class ArticleQueryService {
*/
*/
public
List
<
JSONObject
>
getUnpublishedArticles
()
throws
RepositoryException
{
public
List
<
JSONObject
>
getUnpublishedArticles
()
throws
RepositoryException
{
final
Map
<
String
,
SortDirection
>
sorts
=
new
HashMap
<>();
final
Map
<
String
,
SortDirection
>
sorts
=
new
HashMap
<>();
sorts
.
put
(
Article
.
ARTICLE_CREATED
,
SortDirection
.
DESCENDING
);
sorts
.
put
(
Article
.
ARTICLE_CREATE_DATE
,
SortDirection
.
DESCENDING
);
sorts
.
put
(
Article
.
ARTICLE_PUT_TOP
,
SortDirection
.
DESCENDING
);
sorts
.
put
(
Article
.
ARTICLE_PUT_TOP
,
SortDirection
.
DESCENDING
);
final
Query
query
=
new
Query
().
setFilter
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
));
final
Query
query
=
new
Query
().
setFilter
(
new
PropertyFilter
(
Article
.
ARTICLE_IS_PUBLISHED
,
FilterOperator
.
EQUAL
,
true
));
...
@@ -539,7 +536,7 @@ public class ArticleQueryService {
...
@@ -539,7 +536,7 @@ public class ArticleQueryService {
article
.
remove
(
ARTICLE_COMMENT_COUNT
);
article
.
remove
(
ARTICLE_COMMENT_COUNT
);
article
.
remove
(
ARTICLE_IS_PUBLISHED
);
article
.
remove
(
ARTICLE_IS_PUBLISHED
);
article
.
remove
(
ARTICLE_PUT_TOP
);
article
.
remove
(
ARTICLE_PUT_TOP
);
article
.
remove
(
ARTICLE_UPDATE
_DATE
);
article
.
remove
(
ARTICLE_UPDATE
D
);
article
.
remove
(
ARTICLE_VIEW_COUNT
);
article
.
remove
(
ARTICLE_VIEW_COUNT
);
article
.
remove
(
ARTICLE_RANDOM_DOUBLE
);
article
.
remove
(
ARTICLE_RANDOM_DOUBLE
);
...
@@ -607,9 +604,9 @@ public class ArticleQueryService {
...
@@ -607,9 +604,9 @@ public class ArticleQueryService {
final
Query
query
=
new
Query
().
setCurrentPageNum
(
currentPageNum
).
setPageSize
(
pageSize
).
final
Query
query
=
new
Query
().
setCurrentPageNum
(
currentPageNum
).
setPageSize
(
pageSize
).
addSort
(
ARTICLE_PUT_TOP
,
SortDirection
.
DESCENDING
);
addSort
(
ARTICLE_PUT_TOP
,
SortDirection
.
DESCENDING
);
if
(
requestJSONObject
.
optBoolean
(
Option
.
ID_C_ENABLE_ARTICLE_UPDATE_HINT
))
{
if
(
requestJSONObject
.
optBoolean
(
Option
.
ID_C_ENABLE_ARTICLE_UPDATE_HINT
))
{
query
.
addSort
(
ARTICLE_UPDATE
_DATE
,
SortDirection
.
DESCENDING
);
query
.
addSort
(
ARTICLE_UPDATE
D
,
SortDirection
.
DESCENDING
);
}
else
{
}
else
{
query
.
addSort
(
ARTICLE_CREATE
_DATE
,
SortDirection
.
DESCENDING
);
query
.
addSort
(
ARTICLE_CREATE
D
,
SortDirection
.
DESCENDING
);
}
}
final
String
keyword
=
requestJSONObject
.
optString
(
Common
.
KEYWORD
);
final
String
keyword
=
requestJSONObject
.
optString
(
Common
.
KEYWORD
);
...
@@ -643,8 +640,8 @@ public class ArticleQueryService {
...
@@ -643,8 +640,8 @@ public class ArticleQueryService {
final
JSONObject
author
=
getAuthor
(
article
);
final
JSONObject
author
=
getAuthor
(
article
);
final
String
authorName
=
author
.
getString
(
User
.
USER_NAME
);
final
String
authorName
=
author
.
getString
(
User
.
USER_NAME
);
article
.
put
(
Common
.
AUTHOR_NAME
,
authorName
);
article
.
put
(
Common
.
AUTHOR_NAME
,
authorName
);
article
.
put
(
ARTICLE_CREATE_TIME
,
((
Date
)
article
.
get
(
ARTICLE_CREATE_DATE
)).
getTime
(
));
article
.
put
(
ARTICLE_CREATE_TIME
,
article
.
getLong
(
ARTICLE_CREATED
));
article
.
put
(
ARTICLE_UPDATE_TIME
,
((
Date
)
article
.
get
(
ARTICLE_UPDATE_DATE
)).
getTime
(
));
article
.
put
(
ARTICLE_UPDATE_TIME
,
article
.
getLong
(
ARTICLE_UPDATED
));
// Remove unused properties
// Remove unused properties
for
(
int
j
=
0
;
j
<
excludes
.
length
();
j
++)
{
for
(
int
j
=
0
;
j
<
excludes
.
length
();
j
++)
{
...
@@ -706,7 +703,7 @@ public class ArticleQueryService {
...
@@ -706,7 +703,7 @@ public class ArticleQueryService {
continue
;
continue
;
}
}
article
.
put
(
ARTICLE_CREATE_TIME
,
((
Date
)
article
.
get
(
ARTICLE_CREATE_DATE
)).
getTime
(
));
article
.
put
(
ARTICLE_CREATE_TIME
,
article
.
getLong
(
ARTICLE_CREATED
));
ret
.
add
(
article
);
ret
.
add
(
article
);
}
}
...
@@ -731,15 +728,12 @@ public class ArticleQueryService {
...
@@ -731,15 +728,12 @@ public class ArticleQueryService {
throws
ServiceException
{
throws
ServiceException
{
try
{
try
{
JSONObject
result
=
archiveDateArticleRepository
.
getByArchiveDateId
(
archiveDateId
,
currentPageNum
,
pageSize
);
JSONObject
result
=
archiveDateArticleRepository
.
getByArchiveDateId
(
archiveDateId
,
currentPageNum
,
pageSize
);
final
JSONArray
relations
=
result
.
getJSONArray
(
Keys
.
RESULTS
);
final
JSONArray
relations
=
result
.
getJSONArray
(
Keys
.
RESULTS
);
if
(
0
==
relations
.
length
())
{
if
(
0
==
relations
.
length
())
{
return
Collections
.
emptyList
();
return
Collections
.
emptyList
();
}
}
final
Set
<
String
>
articleIds
=
new
HashSet
<
String
>();
final
Set
<
String
>
articleIds
=
new
HashSet
<>();
for
(
int
i
=
0
;
i
<
relations
.
length
();
i
++)
{
for
(
int
i
=
0
;
i
<
relations
.
length
();
i
++)
{
final
JSONObject
relation
=
relations
.
getJSONObject
(
i
);
final
JSONObject
relation
=
relations
.
getJSONObject
(
i
);
final
String
articleId
=
relation
.
getString
(
Article
.
ARTICLE
+
"_"
+
Keys
.
OBJECT_ID
);
final
String
articleId
=
relation
.
getString
(
Article
.
ARTICLE
+
"_"
+
Keys
.
OBJECT_ID
);
...
@@ -747,14 +741,12 @@ public class ArticleQueryService {
...
@@ -747,14 +741,12 @@ public class ArticleQueryService {
articleIds
.
add
(
articleId
);
articleIds
.
add
(
articleId
);
}
}
final
List
<
JSONObject
>
ret
=
new
ArrayList
<
JSONObject
>();
final
List
<
JSONObject
>
ret
=
new
ArrayList
<>();
final
Query
query
=
new
Query
().
setFilter
(
new
PropertyFilter
(
Keys
.
OBJECT_ID
,
FilterOperator
.
IN
,
articleIds
)).
setPageCount
(
1
).
index
(
final
Query
query
=
new
Query
().
setFilter
(
new
PropertyFilter
(
Keys
.
OBJECT_ID
,
FilterOperator
.
IN
,
articleIds
)).
setPageCount
(
1
).
index
(
Article
.
ARTICLE_PERMALINK
);
Article
.
ARTICLE_PERMALINK
);
result
=
articleRepository
.
get
(
query
);
result
=
articleRepository
.
get
(
query
);
final
JSONArray
articles
=
result
.
getJSONArray
(
Keys
.
RESULTS
);
final
JSONArray
articles
=
result
.
getJSONArray
(
Keys
.
RESULTS
);
for
(
int
i
=
0
;
i
<
articles
.
length
();
i
++)
{
for
(
int
i
=
0
;
i
<
articles
.
length
();
i
++)
{
final
JSONObject
article
=
articles
.
getJSONObject
(
i
);
final
JSONObject
article
=
articles
.
getJSONObject
(
i
);
...
@@ -763,7 +755,7 @@ public class ArticleQueryService {
...
@@ -763,7 +755,7 @@ public class ArticleQueryService {
continue
;
continue
;
}
}
article
.
put
(
ARTICLE_CREATE_TIME
,
((
Date
)
article
.
get
(
ARTICLE_CREATE_DATE
)).
getTime
(
));
article
.
put
(
ARTICLE_CREATE_TIME
,
article
.
getLong
(
ARTICLE_CREATED
));
ret
.
add
(
article
);
ret
.
add
(
article
);
}
}
...
@@ -996,12 +988,12 @@ public class ArticleQueryService {
...
@@ -996,12 +988,12 @@ public class ArticleQueryService {
try
{
try
{
final
JSONObject
result
=
articleRepository
.
getByAuthorEmail
(
authorEmail
,
currentPageNum
,
pageSize
);
final
JSONObject
result
=
articleRepository
.
getByAuthorEmail
(
authorEmail
,
currentPageNum
,
pageSize
);
final
JSONArray
articles
=
result
.
getJSONArray
(
Keys
.
RESULTS
);
final
JSONArray
articles
=
result
.
getJSONArray
(
Keys
.
RESULTS
);
final
List
<
JSONObject
>
ret
=
new
ArrayList
<
JSONObject
>();
final
List
<
JSONObject
>
ret
=
new
ArrayList
<>();
for
(
int
i
=
0
;
i
<
articles
.
length
();
i
++)
{
for
(
int
i
=
0
;
i
<
articles
.
length
();
i
++)
{
final
JSONObject
article
=
articles
.
getJSONObject
(
i
);
final
JSONObject
article
=
articles
.
getJSONObject
(
i
);
article
.
put
(
ARTICLE_CREATE_TIME
,
((
Date
)
article
.
get
(
ARTICLE_CREATE_DATE
)).
getTime
(
));
article
.
put
(
ARTICLE_CREATE_TIME
,
article
.
getLong
(
ARTICLE_CREATED
));
ret
.
add
(
article
);
ret
.
add
(
article
);
}
}
...
@@ -1146,9 +1138,9 @@ public class ArticleQueryService {
...
@@ -1146,9 +1138,9 @@ public class ArticleQueryService {
article
.
remove
(
Article
.
ARTICLE_ABSTRACT
);
article
.
remove
(
Article
.
ARTICLE_ABSTRACT
);
article
.
remove
(
Article
.
ARTICLE_COMMENT_COUNT
);
article
.
remove
(
Article
.
ARTICLE_COMMENT_COUNT
);
article
.
remove
(
Article
.
ARTICLE_CONTENT
);
article
.
remove
(
Article
.
ARTICLE_CONTENT
);
article
.
remove
(
Article
.
ARTICLE_CREATE
_DATE
);
article
.
remove
(
Article
.
ARTICLE_CREATE
D
);
article
.
remove
(
Article
.
ARTICLE_TAGS_REF
);
article
.
remove
(
Article
.
ARTICLE_TAGS_REF
);
article
.
remove
(
Article
.
ARTICLE_UPDATE
_DATE
);
article
.
remove
(
Article
.
ARTICLE_UPDATE
D
);
article
.
remove
(
Article
.
ARTICLE_VIEW_COUNT
);
article
.
remove
(
Article
.
ARTICLE_VIEW_COUNT
);
article
.
remove
(
Article
.
ARTICLE_RANDOM_DOUBLE
);
article
.
remove
(
Article
.
ARTICLE_RANDOM_DOUBLE
);
article
.
remove
(
Article
.
ARTICLE_IS_PUBLISHED
);
article
.
remove
(
Article
.
ARTICLE_IS_PUBLISHED
);
...
...
src/main/java/org/b3log/solo/service/ExportService.java
View file @
e8235eef
...
@@ -41,7 +41,7 @@ import java.util.stream.Collectors;
...
@@ -41,7 +41,7 @@ import java.util.stream.Collectors;
* Export service.
* Export service.
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.1.0.
0, Nov 11, 2017
* @version 1.1.0.
1, Sep 16, 2018
* @since 2.5.0
* @since 2.5.0
*/
*/
@Service
@Service
...
@@ -162,9 +162,9 @@ public class ExportService {
...
@@ -162,9 +162,9 @@ public class ExportService {
final
Map
<
String
,
Object
>
front
=
new
LinkedHashMap
<>();
final
Map
<
String
,
Object
>
front
=
new
LinkedHashMap
<>();
final
String
title
=
article
.
optString
(
Article
.
ARTICLE_TITLE
);
final
String
title
=
article
.
optString
(
Article
.
ARTICLE_TITLE
);
front
.
put
(
"title"
,
title
);
front
.
put
(
"title"
,
title
);
final
String
date
=
DateFormatUtils
.
format
(
(
Date
)
article
.
opt
(
Article
.
ARTICLE_CREATE_DATE
),
"yyyy-MM-dd HH:mm:ss"
);
final
String
date
=
DateFormatUtils
.
format
(
article
.
optLong
(
Article
.
ARTICLE_CREATED
),
"yyyy-MM-dd HH:mm:ss"
);
front
.
put
(
"date"
,
date
);
front
.
put
(
"date"
,
date
);
front
.
put
(
"updated"
,
DateFormatUtils
.
format
(
(
Date
)
article
.
opt
(
Article
.
ARTICLE_UPDATE_DATE
),
"yyyy-MM-dd HH:mm:ss"
));
front
.
put
(
"updated"
,
DateFormatUtils
.
format
(
article
.
optLong
(
Article
.
ARTICLE_UPDATED
),
"yyyy-MM-dd HH:mm:ss"
));
final
List
<
String
>
tags
=
Arrays
.
stream
(
article
.
optString
(
Article
.
ARTICLE_TAGS_REF
).
split
(
","
)).
filter
(
StringUtils:
:
isNotBlank
).
map
(
String:
:
trim
).
collect
(
Collectors
.
toList
());
final
List
<
String
>
tags
=
Arrays
.
stream
(
article
.
optString
(
Article
.
ARTICLE_TAGS_REF
).
split
(
","
)).
filter
(
StringUtils:
:
isNotBlank
).
map
(
String:
:
trim
).
collect
(
Collectors
.
toList
());
if
(
tags
.
isEmpty
())
{
if
(
tags
.
isEmpty
())
{
tags
.
add
(
"Solo"
);
tags
.
add
(
"Solo"
);
...
...
src/main/java/org/b3log/solo/service/ImportService.java
View file @
e8235eef
...
@@ -40,7 +40,7 @@ import java.util.*;
...
@@ -40,7 +40,7 @@ import java.util.*;
* Import service.
* Import service.
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.0.1.
1, Nov 11, 2017
* @version 1.0.1.
2, Sep 16, 2018
* @since 2.2.0
* @since 2.2.0
*/
*/
@Service
@Service
...
@@ -191,7 +191,7 @@ public class ImportService {
...
@@ -191,7 +191,7 @@ public class ImportService {
ret
.
put
(
Article
.
ARTICLE_ABSTRACT
,
abs
);
ret
.
put
(
Article
.
ARTICLE_ABSTRACT
,
abs
);
final
Date
date
=
parseDate
(
elems
);
final
Date
date
=
parseDate
(
elems
);
ret
.
put
(
Article
.
ARTICLE_CREATE
_DATE
,
date
);
ret
.
put
(
Article
.
ARTICLE_CREATE
D
,
date
.
getTime
()
);
final
String
permalink
=
(
String
)
elems
.
get
(
"permalink"
);
final
String
permalink
=
(
String
)
elems
.
get
(
"permalink"
);
if
(
StringUtils
.
isNotBlank
(
permalink
))
{
if
(
StringUtils
.
isNotBlank
(
permalink
))
{
...
...
src/main/java/org/b3log/solo/service/InitService.java
View file @
e8235eef
...
@@ -49,7 +49,6 @@ import org.json.JSONObject;
...
@@ -49,7 +49,6 @@ import org.json.JSONObject;
import
javax.servlet.ServletContext
;
import
javax.servlet.ServletContext
;
import
java.text.ParseException
;
import
java.text.ParseException
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Set
;
import
java.util.Set
;
...
@@ -57,7 +56,7 @@ import java.util.Set;
...
@@ -57,7 +56,7 @@ import java.util.Set;
* Solo initialization service.
* Solo initialization service.
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.5.2.2
2
, Sep 16, 2018
* @version 1.5.2.2
3
, Sep 16, 2018
* @since 0.4.0
* @since 0.4.0
*/
*/
@Service
@Service
...
@@ -288,13 +287,11 @@ public class InitService {
...
@@ -288,13 +287,11 @@ public class InitService {
article
.
put
(
Article
.
ARTICLE_SIGN_ID
,
"1"
);
article
.
put
(
Article
.
ARTICLE_SIGN_ID
,
"1"
);
article
.
put
(
Article
.
ARTICLE_COMMENT_COUNT
,
1
);
article
.
put
(
Article
.
ARTICLE_COMMENT_COUNT
,
1
);
article
.
put
(
Article
.
ARTICLE_VIEW_COUNT
,
0
);
article
.
put
(
Article
.
ARTICLE_VIEW_COUNT
,
0
);
final
Date
date
=
new
Date
();
final
JSONObject
admin
=
userRepository
.
getAdmin
();
final
JSONObject
admin
=
userRepository
.
getAdmin
();
final
String
authorEmail
=
admin
.
optString
(
User
.
USER_EMAIL
);
final
String
authorEmail
=
admin
.
optString
(
User
.
USER_EMAIL
);
final
long
now
=
System
.
currentTimeMillis
();
article
.
put
(
Article
.
ARTICLE_CREATE
_DATE
,
date
);
article
.
put
(
Article
.
ARTICLE_CREATE
D
,
now
);
article
.
put
(
Article
.
ARTICLE_UPDATE
_DATE
,
date
);
article
.
put
(
Article
.
ARTICLE_UPDATE
D
,
now
);
article
.
put
(
Article
.
ARTICLE_PUT_TOP
,
false
);
article
.
put
(
Article
.
ARTICLE_PUT_TOP
,
false
);
article
.
put
(
Article
.
ARTICLE_RANDOM_DOUBLE
,
Math
.
random
());
article
.
put
(
Article
.
ARTICLE_RANDOM_DOUBLE
,
Math
.
random
());
article
.
put
(
Article
.
ARTICLE_AUTHOR_EMAIL
,
authorEmail
);
article
.
put
(
Article
.
ARTICLE_AUTHOR_EMAIL
,
authorEmail
);
...
@@ -313,7 +310,7 @@ public class InitService {
...
@@ -313,7 +310,7 @@ public class InitService {
comment
.
put
(
Comment
.
COMMENT_ORIGINAL_COMMENT_ID
,
""
);
comment
.
put
(
Comment
.
COMMENT_ORIGINAL_COMMENT_ID
,
""
);
comment
.
put
(
Comment
.
COMMENT_ORIGINAL_COMMENT_NAME
,
""
);
comment
.
put
(
Comment
.
COMMENT_ORIGINAL_COMMENT_NAME
,
""
);
comment
.
put
(
Comment
.
COMMENT_THUMBNAIL_URL
,
Solos
.
GRAVATAR
+
"59a5e8209c780307dbe9c9ba728073f5??s=60&r=G"
);
comment
.
put
(
Comment
.
COMMENT_THUMBNAIL_URL
,
Solos
.
GRAVATAR
+
"59a5e8209c780307dbe9c9ba728073f5??s=60&r=G"
);
comment
.
put
(
Comment
.
COMMENT_CREATED
,
date
.
getTime
()
);
comment
.
put
(
Comment
.
COMMENT_CREATED
,
now
);
comment
.
put
(
Comment
.
COMMENT_ON_ID
,
articleId
);
comment
.
put
(
Comment
.
COMMENT_ON_ID
,
articleId
);
comment
.
put
(
Comment
.
COMMENT_ON_TYPE
,
Article
.
ARTICLE
);
comment
.
put
(
Comment
.
COMMENT_ON_TYPE
,
Article
.
ARTICLE
);
final
String
commentId
=
Ids
.
genTimeMillisId
();
final
String
commentId
=
Ids
.
genTimeMillisId
();
...
@@ -386,8 +383,8 @@ public class InitService {
...
@@ -386,8 +383,8 @@ public class InitService {
* @throws RepositoryException repository exception
* @throws RepositoryException repository exception
*/
*/
public
void
archiveDate
(
final
JSONObject
article
)
throws
RepositoryException
{
public
void
archiveDate
(
final
JSONObject
article
)
throws
RepositoryException
{
final
Date
createDate
=
(
Date
)
article
.
opt
(
Article
.
ARTICLE_CREATE_DATE
);
final
long
created
=
article
.
optLong
(
Article
.
ARTICLE_CREATED
);
final
String
createDateString
=
DateFormatUtils
.
format
(
create
Date
,
"yyyy/MM"
);
final
String
createDateString
=
DateFormatUtils
.
format
(
create
d
,
"yyyy/MM"
);
final
JSONObject
archiveDate
=
new
JSONObject
();
final
JSONObject
archiveDate
=
new
JSONObject
();
try
{
try
{
...
...
src/main/java/org/b3log/solo/util/comparator/ArticleCreateDateComparator.java
View file @
e8235eef
...
@@ -21,13 +21,12 @@ import org.b3log.solo.model.Article;
...
@@ -21,13 +21,12 @@ import org.b3log.solo.model.Article;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.Comparator
;
import
java.util.Comparator
;
import
java.util.Date
;
/**
/**
* Article comparator by create date.
* Article comparator by create date.
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.0.0.
1, Dec 30, 2010
* @version 1.0.0.
2, Sep 16, 2018
*/
*/
public
final
class
ArticleCreateDateComparator
implements
Comparator
<
JSONObject
>
{
public
final
class
ArticleCreateDateComparator
implements
Comparator
<
JSONObject
>
{
...
@@ -40,10 +39,10 @@ public final class ArticleCreateDateComparator implements Comparator<JSONObject>
...
@@ -40,10 +39,10 @@ public final class ArticleCreateDateComparator implements Comparator<JSONObject>
@Override
@Override
public
int
compare
(
final
JSONObject
article1
,
final
JSONObject
article2
)
{
public
int
compare
(
final
JSONObject
article1
,
final
JSONObject
article2
)
{
try
{
try
{
final
Date
date1
=
(
Date
)
article1
.
get
(
Article
.
ARTICLE_CREATE_DATE
);
final
long
date1
=
article1
.
getLong
(
Article
.
ARTICLE_CREATED
);
final
Date
date2
=
(
Date
)
article2
.
get
(
Article
.
ARTICLE_CREATE_DATE
);
final
long
date2
=
article2
.
getLong
(
Article
.
ARTICLE_CREATED
);
return
date2
.
compareTo
(
date1
);
return
(
int
)
(
date2
-
date1
);
}
catch
(
final
Exception
e
)
{
}
catch
(
final
Exception
e
)
{
throw
new
IllegalStateException
(
e
);
throw
new
IllegalStateException
(
e
);
}
}
...
...
src/main/java/org/b3log/solo/util/comparator/ArticleUpdateDateComparator.java
View file @
e8235eef
...
@@ -27,7 +27,7 @@ import java.util.Date;
...
@@ -27,7 +27,7 @@ import java.util.Date;
* Article comparator by update date.
* Article comparator by update date.
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.0.0.
1, Dec 30, 2010
* @version 1.0.0.
2, Sep 16, 2018
*/
*/
public
final
class
ArticleUpdateDateComparator
implements
Comparator
<
JSONObject
>
{
public
final
class
ArticleUpdateDateComparator
implements
Comparator
<
JSONObject
>
{
...
@@ -40,8 +40,8 @@ public final class ArticleUpdateDateComparator implements Comparator<JSONObject>
...
@@ -40,8 +40,8 @@ public final class ArticleUpdateDateComparator implements Comparator<JSONObject>
@Override
@Override
public
int
compare
(
final
JSONObject
article1
,
final
JSONObject
article2
)
{
public
int
compare
(
final
JSONObject
article1
,
final
JSONObject
article2
)
{
try
{
try
{
final
Date
date1
=
(
Date
)
article1
.
get
(
Article
.
ARTICLE_UPDATE
_DATE
);
final
Date
date1
=
(
Date
)
article1
.
get
(
Article
.
ARTICLE_UPDATE
D
);
final
Date
date2
=
(
Date
)
article2
.
get
(
Article
.
ARTICLE_UPDATE
_DATE
);
final
Date
date2
=
(
Date
)
article2
.
get
(
Article
.
ARTICLE_UPDATE
D
);
return
date2
.
compareTo
(
date1
);
return
date2
.
compareTo
(
date1
);
}
catch
(
final
Exception
e
)
{
}
catch
(
final
Exception
e
)
{
...
...
src/main/resources/repository.json
View file @
e8235eef
...
@@ -530,13 +530,13 @@
...
@@ -530,13 +530,13 @@
"type"
:
"boolean"
"type"
:
"boolean"
},
},
{
{
"name"
:
"articleCreate
Date
"
,
"name"
:
"articleCreate
d
"
,
"description"
:
"文章创建时间"
,
"description"
:
"文章创建时间
戳
"
,
"type"
:
"Date"
"type"
:
"Date"
},
},
{
{
"name"
:
"articleUpdate
Date
"
,
"name"
:
"articleUpdate
d
"
,
"description"
:
"文章更新时间"
,
"description"
:
"文章更新时间
戳
"
,
"type"
:
"Date"
"type"
:
"Date"
},
},
{
{
...
...
src/test/java/org/b3log/solo/repository/impl/ArticleRepositoryImplTestCase.java
View file @
e8235eef
...
@@ -17,8 +17,6 @@
...
@@ -17,8 +17,6 @@
*/
*/
package
org
.
b3log
.
solo
.
repository
.
impl
;
package
org
.
b3log
.
solo
.
repository
.
impl
;
import
java.util.Date
;
import
java.util.List
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.Transaction
;
import
org.b3log.latke.repository.Transaction
;
...
@@ -30,6 +28,9 @@ import org.json.JSONObject;
...
@@ -30,6 +28,9 @@ import org.json.JSONObject;
import
org.testng.Assert
;
import
org.testng.Assert
;
import
org.testng.annotations.Test
;
import
org.testng.annotations.Test
;
import
java.util.Date
;
import
java.util.List
;
/**
/**
* {@link ArticleRepositoryImpl} test case.
* {@link ArticleRepositoryImpl} test case.
*
*
...
@@ -61,8 +62,8 @@ public final class ArticleRepositoryImplTestCase extends AbstractTestCase {
...
@@ -61,8 +62,8 @@ public final class ArticleRepositoryImplTestCase extends AbstractTestCase {
article
.
put
(
Article
.
ARTICLE_HAD_BEEN_PUBLISHED
,
true
);
article
.
put
(
Article
.
ARTICLE_HAD_BEEN_PUBLISHED
,
true
);
article
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
,
true
);
article
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
,
true
);
article
.
put
(
Article
.
ARTICLE_PUT_TOP
,
false
);
article
.
put
(
Article
.
ARTICLE_PUT_TOP
,
false
);
article
.
put
(
Article
.
ARTICLE_CREATE
_DATE
,
new
Dat
e
());
article
.
put
(
Article
.
ARTICLE_CREATE
D
,
new
Date
().
getTim
e
());
article
.
put
(
Article
.
ARTICLE_UPDATE
_DATE
,
new
Dat
e
());
article
.
put
(
Article
.
ARTICLE_UPDATE
D
,
new
Date
().
getTim
e
());
article
.
put
(
Article
.
ARTICLE_RANDOM_DOUBLE
,
Math
.
random
());
article
.
put
(
Article
.
ARTICLE_RANDOM_DOUBLE
,
Math
.
random
());
article
.
put
(
Article
.
ARTICLE_SIGN_ID
,
"1"
);
article
.
put
(
Article
.
ARTICLE_SIGN_ID
,
"1"
);
article
.
put
(
Article
.
ARTICLE_COMMENTABLE
,
true
);
article
.
put
(
Article
.
ARTICLE_COMMENTABLE
,
true
);
...
@@ -116,8 +117,8 @@ public final class ArticleRepositoryImplTestCase extends AbstractTestCase {
...
@@ -116,8 +117,8 @@ public final class ArticleRepositoryImplTestCase extends AbstractTestCase {
article
.
put
(
Article
.
ARTICLE_HAD_BEEN_PUBLISHED
,
true
);
article
.
put
(
Article
.
ARTICLE_HAD_BEEN_PUBLISHED
,
true
);
article
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
,
true
);
article
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
,
true
);
article
.
put
(
Article
.
ARTICLE_PUT_TOP
,
false
);
article
.
put
(
Article
.
ARTICLE_PUT_TOP
,
false
);
article
.
put
(
Article
.
ARTICLE_CREATE
_DATE
,
new
Dat
e
());
article
.
put
(
Article
.
ARTICLE_CREATE
D
,
new
Date
().
getTim
e
());
article
.
put
(
Article
.
ARTICLE_UPDATE
_DATE
,
new
Dat
e
());
article
.
put
(
Article
.
ARTICLE_UPDATE
D
,
new
Date
().
getTim
e
());
article
.
put
(
Article
.
ARTICLE_RANDOM_DOUBLE
,
Math
.
random
());
article
.
put
(
Article
.
ARTICLE_RANDOM_DOUBLE
,
Math
.
random
());
article
.
put
(
Article
.
ARTICLE_SIGN_ID
,
"1"
);
article
.
put
(
Article
.
ARTICLE_SIGN_ID
,
"1"
);
article
.
put
(
Article
.
ARTICLE_COMMENTABLE
,
true
);
article
.
put
(
Article
.
ARTICLE_COMMENTABLE
,
true
);
...
@@ -166,8 +167,8 @@ public final class ArticleRepositoryImplTestCase extends AbstractTestCase {
...
@@ -166,8 +167,8 @@ public final class ArticleRepositoryImplTestCase extends AbstractTestCase {
article
.
put
(
Article
.
ARTICLE_HAD_BEEN_PUBLISHED
,
true
);
article
.
put
(
Article
.
ARTICLE_HAD_BEEN_PUBLISHED
,
true
);
article
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
,
true
);
article
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
,
true
);
article
.
put
(
Article
.
ARTICLE_PUT_TOP
,
false
);
article
.
put
(
Article
.
ARTICLE_PUT_TOP
,
false
);
article
.
put
(
Article
.
ARTICLE_CREATE
_DATE
,
new
Dat
e
());
article
.
put
(
Article
.
ARTICLE_CREATE
D
,
new
Date
().
getTim
e
());
article
.
put
(
Article
.
ARTICLE_UPDATE
_DATE
,
new
Dat
e
());
article
.
put
(
Article
.
ARTICLE_UPDATE
D
,
new
Date
().
getTim
e
());
article
.
put
(
Article
.
ARTICLE_RANDOM_DOUBLE
,
Math
.
random
());
article
.
put
(
Article
.
ARTICLE_RANDOM_DOUBLE
,
Math
.
random
());
article
.
put
(
Article
.
ARTICLE_SIGN_ID
,
"1"
);
article
.
put
(
Article
.
ARTICLE_SIGN_ID
,
"1"
);
article
.
put
(
Article
.
ARTICLE_COMMENTABLE
,
true
);
article
.
put
(
Article
.
ARTICLE_COMMENTABLE
,
true
);
...
@@ -214,8 +215,8 @@ public final class ArticleRepositoryImplTestCase extends AbstractTestCase {
...
@@ -214,8 +215,8 @@ public final class ArticleRepositoryImplTestCase extends AbstractTestCase {
article
.
put
(
Article
.
ARTICLE_HAD_BEEN_PUBLISHED
,
false
);
article
.
put
(
Article
.
ARTICLE_HAD_BEEN_PUBLISHED
,
false
);
article
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
,
false
);
// Unpublished
article
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
,
false
);
// Unpublished
article
.
put
(
Article
.
ARTICLE_PUT_TOP
,
false
);
article
.
put
(
Article
.
ARTICLE_PUT_TOP
,
false
);
article
.
put
(
Article
.
ARTICLE_CREATE
_DATE
,
new
Dat
e
());
article
.
put
(
Article
.
ARTICLE_CREATE
D
,
new
Date
().
getTim
e
());
article
.
put
(
Article
.
ARTICLE_UPDATE
_DATE
,
new
Dat
e
());
article
.
put
(
Article
.
ARTICLE_UPDATE
D
,
new
Date
().
getTim
e
());
article
.
put
(
Article
.
ARTICLE_RANDOM_DOUBLE
,
Math
.
random
());
article
.
put
(
Article
.
ARTICLE_RANDOM_DOUBLE
,
Math
.
random
());
article
.
put
(
Article
.
ARTICLE_SIGN_ID
,
"1"
);
article
.
put
(
Article
.
ARTICLE_SIGN_ID
,
"1"
);
article
.
put
(
Article
.
ARTICLE_COMMENTABLE
,
true
);
article
.
put
(
Article
.
ARTICLE_COMMENTABLE
,
true
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment