Skip to content

Commit 4e711b7

Browse files
jirka.pinkas@gmail.comjirka.pinkas@gmail.com
authored andcommitted
added defaultLastMod to *Generator
1 parent cb8e0b6 commit 4e711b7

File tree

1 file changed

+46
-0
lines changed

1 file changed

+46
-0
lines changed

src/main/java/cz/jiripinkas/jsitemapgenerator/AbstractSitemapGenerator.java

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@
77
import java.net.URLEncoder;
88
import java.nio.charset.StandardCharsets;
99
import java.nio.file.Path;
10+
import java.sql.Timestamp;
11+
import java.time.LocalDateTime;
12+
import java.util.Date;
1013
import java.util.zip.GZIPOutputStream;
1114

1215
public abstract class AbstractSitemapGenerator <T extends AbstractGenerator> extends AbstractGenerator <T> {
@@ -21,6 +24,8 @@ public abstract class AbstractSitemapGenerator <T extends AbstractGenerator> ext
2124

2225
private String defaultExtension;
2326

27+
private Date defaultLastMod;
28+
2429
public AbstractSitemapGenerator(String baseUrl) {
2530
super(baseUrl);
2631
}
@@ -251,6 +256,9 @@ protected void beforeAddPageEvent(WebPage webPage) {
251256
if(defaultChangeFreq != null && webPage.getChangeFreq() == null) {
252257
webPage.setChangeFreq(defaultChangeFreq);
253258
}
259+
if(defaultLastMod != null && webPage.getLastMod() == null) {
260+
webPage.setLastMod(defaultLastMod);
261+
}
254262
}
255263

256264
/**
@@ -423,4 +431,42 @@ public T resetDefaultChangeFreq() {
423431
return getThis();
424432
}
425433

434+
/**
435+
* Sets default lastMod for all subsequent WebPages
436+
* @param lastMod lastMod
437+
* @return this
438+
*/
439+
public T defaultLastMod(Date lastMod) {
440+
defaultLastMod = lastMod;
441+
return getThis();
442+
}
443+
444+
/**
445+
* Sets default lastMod for all subsequent WebPages
446+
* @param lastMod lastMod
447+
* @return this
448+
*/
449+
public T defaultLastMod(LocalDateTime lastMod) {
450+
defaultLastMod = Timestamp.valueOf(lastMod);
451+
return getThis();
452+
}
453+
454+
/**
455+
* Sets default lastMod = new Date() for all subsequent WebPages
456+
* @return this
457+
*/
458+
public T defaultLastModNow() {
459+
defaultLastMod = new Date();
460+
return getThis();
461+
}
462+
463+
/**
464+
* Reset default lastMod
465+
* @return this
466+
*/
467+
public T resetDefaultLastMod() {
468+
defaultLastMod = null;
469+
return getThis();
470+
}
471+
426472
}

0 commit comments

Comments
 (0)