29
29
import org .springframework .jdbc .support .KeyHolder ;
30
30
import ru .mystamps .web .common .JdbcUtils ;
31
31
import ru .mystamps .web .common .LinkEntityDto ;
32
+ import ru .mystamps .web .common .SitemapInfoDto ;
32
33
import ru .mystamps .web .support .spring .jdbc .MapIntegerIntegerResultSetExtractor ;
33
34
34
35
import java .util .Collections ;
37
38
import java .util .List ;
38
39
import java .util .Map ;
39
40
40
- @ SuppressWarnings ({ "PMD.AvoidDuplicateLiterals" , "PMD.TooManyMethods" })
41
+ @ SuppressWarnings ({ "PMD.AvoidDuplicateLiterals" , "PMD.TooManyMethods" , "PMD.TooManyFields" })
41
42
public class JdbcCollectionDao implements CollectionDao {
42
43
private static final Logger LOG = LoggerFactory .getLogger (JdbcCollectionDao .class );
43
44
@@ -48,6 +49,7 @@ public class JdbcCollectionDao implements CollectionDao {
48
49
private final String findLastCreatedCollectionsSql ;
49
50
private final String findSeriesByCollectionIdSql ;
50
51
private final String findSeriesWithPricesBySlugSql ;
52
+ private final String findAllForSitemapSql ;
51
53
private final String countCollectionsOfUsersSql ;
52
54
private final String countUpdatedSinceSql ;
53
55
private final String countSeriesOfCollectionSql ;
@@ -66,6 +68,7 @@ public JdbcCollectionDao(Environment env, NamedParameterJdbcTemplate jdbcTemplat
66
68
this .findLastCreatedCollectionsSql = env .getRequiredProperty ("collection.find_last_created" );
67
69
this .findSeriesByCollectionIdSql = env .getRequiredProperty ("collection.find_series_by_collection_id" );
68
70
this .findSeriesWithPricesBySlugSql = env .getRequiredProperty ("collection.find_series_with_prices_by_slug" );
71
+ this .findAllForSitemapSql = env .getRequiredProperty ("collection.find_all_for_sitemap" );
69
72
this .countCollectionsOfUsersSql = env .getRequiredProperty ("collection.count_collections_of_users" );
70
73
this .countUpdatedSinceSql = env .getRequiredProperty ("collection.count_updated_since" );
71
74
this .countSeriesOfCollectionSql = env .getRequiredProperty ("collection.count_series_of_collection" );
@@ -117,6 +120,15 @@ public List<SeriesInCollectionWithPriceDto> findSeriesWithPricesBySlug(
117
120
);
118
121
}
119
122
123
+ @ Override
124
+ public List <SitemapInfoDto > findAllForSitemap () {
125
+ return jdbcTemplate .query (
126
+ findAllForSitemapSql ,
127
+ Collections .emptyMap (),
128
+ ru .mystamps .web .common .RowMappers ::forSitemapInfoDto
129
+ );
130
+ }
131
+
120
132
@ Override
121
133
public long countCollectionsOfUsers () {
122
134
return jdbcTemplate .queryForObject (
0 commit comments