Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Genesys Backend
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
12
Issues
12
List
Boards
Labels
Service Desk
Milestones
Operations
Operations
Incidents
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Genesys PGR
Genesys Backend
Commits
f8b32747
Commit
f8b32747
authored
Sep 18, 2018
by
Matija Obreza
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Updated `countZzzz` by model filter methods
parent
66c2a304
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
99 additions
and
74 deletions
+99
-74
src/main/java/org/genesys/catalog/model/filters/DatasetFilter.java
...java/org/genesys/catalog/model/filters/DatasetFilter.java
+11
-0
src/main/java/org/genesys/catalog/model/filters/DescriptorFilter.java
...a/org/genesys/catalog/model/filters/DescriptorFilter.java
+11
-0
src/main/java/org/genesys/catalog/service/DatasetService.java
...main/java/org/genesys/catalog/service/DatasetService.java
+3
-2
src/main/java/org/genesys/catalog/service/DescriptorService.java
...n/java/org/genesys/catalog/service/DescriptorService.java
+3
-2
src/main/java/org/genesys/catalog/service/impl/DatasetServiceImpl.java
.../org/genesys/catalog/service/impl/DatasetServiceImpl.java
+15
-15
src/main/java/org/genesys/catalog/service/impl/DescriptorServiceImpl.java
...g/genesys/catalog/service/impl/DescriptorServiceImpl.java
+9
-9
src/main/java/org/genesys/catalog/service/impl/PartnerServiceImpl.java
.../org/genesys/catalog/service/impl/PartnerServiceImpl.java
+7
-18
src/main/java/org/genesys2/server/api/v1/ApiInfoController.java
...in/java/org/genesys2/server/api/v1/ApiInfoController.java
+15
-22
src/main/java/org/genesys2/server/service/SubsetService.java
src/main/java/org/genesys2/server/service/SubsetService.java
+3
-2
src/main/java/org/genesys2/server/service/filter/AccessionFilter.java
...a/org/genesys2/server/service/filter/AccessionFilter.java
+6
-1
src/main/java/org/genesys2/server/service/filter/SubsetFilter.java
...java/org/genesys2/server/service/filter/SubsetFilter.java
+11
-0
src/main/java/org/genesys2/server/service/impl/StatisticsServiceImpl.java
...g/genesys2/server/service/impl/StatisticsServiceImpl.java
+3
-1
src/main/java/org/genesys2/server/service/impl/SubsetServiceImpl.java
...a/org/genesys2/server/service/impl/SubsetServiceImpl.java
+2
-2
No files found.
src/main/java/org/genesys/catalog/model/filters/DatasetFilter.java
View file @
f8b32747
...
@@ -17,6 +17,7 @@ package org.genesys.catalog.model.filters;
...
@@ -17,6 +17,7 @@ package org.genesys.catalog.model.filters;
import
static
org
.
genesys
.
catalog
.
model
.
dataset
.
QDataset
.
dataset
;
import
static
org
.
genesys
.
catalog
.
model
.
dataset
.
QDataset
.
dataset
;
import
java.util.HashSet
;
import
java.util.Set
;
import
java.util.Set
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.CollectionUtils
;
...
@@ -124,4 +125,14 @@ public class DatasetFilter extends UuidModelFilter<DatasetFilter, Dataset> {
...
@@ -124,4 +125,14 @@ public class DatasetFilter extends UuidModelFilter<DatasetFilter, Dataset> {
return
and
;
return
and
;
}
}
public
DatasetFilter
state
(
PublishState
...
state
)
{
if
(
this
.
state
==
null
)
{
this
.
state
=
new
HashSet
<>();
}
for
(
PublishState
s
:
state
)
{
this
.
state
.
add
(
s
);
}
return
this
;
}
}
}
src/main/java/org/genesys/catalog/model/filters/DescriptorFilter.java
View file @
f8b32747
...
@@ -17,6 +17,7 @@ package org.genesys.catalog.model.filters;
...
@@ -17,6 +17,7 @@ package org.genesys.catalog.model.filters;
import
static
org
.
genesys
.
catalog
.
model
.
traits
.
QDescriptor
.
descriptor
;
import
static
org
.
genesys
.
catalog
.
model
.
traits
.
QDescriptor
.
descriptor
;
import
java.util.HashSet
;
import
java.util.Set
;
import
java.util.Set
;
import
org.apache.commons.lang3.ArrayUtils
;
import
org.apache.commons.lang3.ArrayUtils
;
...
@@ -171,4 +172,14 @@ public class DescriptorFilter extends UuidModelFilter<DescriptorFilter, Descript
...
@@ -171,4 +172,14 @@ public class DescriptorFilter extends UuidModelFilter<DescriptorFilter, Descript
return
and
;
return
and
;
}
}
public
DescriptorFilter
state
(
PublishState
...
state
)
{
if
(
this
.
state
==
null
)
{
this
.
state
=
new
HashSet
<>();
}
for
(
PublishState
s
:
state
)
{
this
.
state
.
add
(
s
);
}
return
this
;
}
}
}
src/main/java/org/genesys/catalog/service/DatasetService.java
View file @
f8b32747
...
@@ -245,11 +245,12 @@ public interface DatasetService {
...
@@ -245,11 +245,12 @@ public interface DatasetService {
Dataset
updateDatasetFile
(
Dataset
dataset
,
RepositoryFile
metadata
)
throws
NoSuchRepositoryFileException
;
Dataset
updateDatasetFile
(
Dataset
dataset
,
RepositoryFile
metadata
)
throws
NoSuchRepositoryFileException
;
/**
/**
* Count the number of published datasets
* Count the number of published datasets
.
*
*
* @param filter the filter
* @return the number of published datasets
* @return the number of published datasets
*/
*/
long
count
Published
(
);
long
count
Datasets
(
DatasetFilter
filter
);
/**
/**
* Load data about last published datasets.
* Load data about last published datasets.
...
...
src/main/java/org/genesys/catalog/service/DescriptorService.java
View file @
f8b32747
...
@@ -174,9 +174,10 @@ public interface DescriptorService {
...
@@ -174,9 +174,10 @@ public interface DescriptorService {
void
exportDescriptors
(
DescriptorFilter
filter
,
OutputStream
outputStream
)
throws
IOException
;
void
exportDescriptors
(
DescriptorFilter
filter
,
OutputStream
outputStream
)
throws
IOException
;
/**
/**
* Co
nt published descriptors
* Co
unt published descriptors.
*
*
* @param filter the filter
* @return the number of published descriptors
* @return the number of published descriptors
*/
*/
long
count
Published
(
);
long
count
Descriptors
(
DescriptorFilter
filter
);
}
}
src/main/java/org/genesys/catalog/service/impl/DatasetServiceImpl.java
View file @
f8b32747
...
@@ -15,7 +15,7 @@
...
@@ -15,7 +15,7 @@
*/
*/
package
org.genesys.catalog.service.impl
;
package
org.genesys.catalog.service.impl
;
import
static
org
.
genesys
.
catalog
.
model
.
dataset
.
QDataset
.
*
;
import
static
org
.
genesys
.
catalog
.
model
.
dataset
.
QDataset
.
dataset
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.nio.file.Paths
;
import
java.nio.file.Paths
;
...
@@ -267,8 +267,16 @@ public class DatasetServiceImpl implements DatasetService {
...
@@ -267,8 +267,16 @@ public class DatasetServiceImpl implements DatasetService {
@Override
@Override
public
Page
<
Dataset
>
listDatasets
(
final
DatasetFilter
filter
,
final
Pageable
page
)
{
public
Page
<
Dataset
>
listDatasets
(
final
DatasetFilter
filter
,
final
Pageable
page
)
{
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"title"
);
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"title"
);
Page
res
=
datasetRepository
.
findAll
(
new
BooleanBuilder
().
and
(
filter
.
buildQuery
()).
and
(
QDataset
.
dataset
.
state
.
in
(
PublishState
.
PUBLISHED
)),
markdownSortPageRequest
);
Page
<
Dataset
>
res
=
datasetRepository
.
findAll
(
new
BooleanBuilder
().
and
(
filter
.
buildQuery
()).
and
(
QDataset
.
dataset
.
state
.
in
(
PublishState
.
PUBLISHED
)),
markdownSortPageRequest
);
return
new
PageImpl
<
Dataset
>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
return
new
PageImpl
<>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
}
/**
* {@inheritDoc}
*/
@Override
public
long
countDatasets
(
DatasetFilter
filter
)
{
return
datasetRepository
.
count
(
filter
.
buildQuery
());
}
}
/**
/**
...
@@ -278,13 +286,13 @@ public class DatasetServiceImpl implements DatasetService {
...
@@ -278,13 +286,13 @@ public class DatasetServiceImpl implements DatasetService {
public
Page
<
Dataset
>
listDatasetsForCurrentUser
(
final
DatasetFilter
filter
,
final
Pageable
page
)
{
public
Page
<
Dataset
>
listDatasetsForCurrentUser
(
final
DatasetFilter
filter
,
final
Pageable
page
)
{
if
(
securityUtils
.
hasRole
(
UserRole
.
ADMINISTRATOR
))
{
if
(
securityUtils
.
hasRole
(
UserRole
.
ADMINISTRATOR
))
{
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"title"
);
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"title"
);
Page
res
=
datasetRepository
.
findAll
(
filter
.
buildQuery
(),
markdownSortPageRequest
);
Page
<
Dataset
>
res
=
datasetRepository
.
findAll
(
filter
.
buildQuery
(),
markdownSortPageRequest
);
return
new
PageImpl
<
Dataset
>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
return
new
PageImpl
<>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
}
else
{
}
else
{
final
HashSet
<
Long
>
partners
=
new
HashSet
<>(
securityUtils
.
listObjectIdentityIdsForCurrentUser
(
Partner
.
class
,
BasePermission
.
WRITE
));
final
HashSet
<
Long
>
partners
=
new
HashSet
<>(
securityUtils
.
listObjectIdentityIdsForCurrentUser
(
Partner
.
class
,
BasePermission
.
WRITE
));
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"title"
);
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"title"
);
Page
res
=
datasetRepository
.
findAll
(
dataset
.
owner
.
id
.
in
(
partners
).
and
(
filter
.
buildQuery
()),
markdownSortPageRequest
);
Page
<
Dataset
>
res
=
datasetRepository
.
findAll
(
dataset
.
owner
.
id
.
in
(
partners
).
and
(
filter
.
buildQuery
()),
markdownSortPageRequest
);
return
new
PageImpl
<
Dataset
>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
return
new
PageImpl
<>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
}
}
}
}
...
@@ -528,14 +536,6 @@ public class DatasetServiceImpl implements DatasetService {
...
@@ -528,14 +536,6 @@ public class DatasetServiceImpl implements DatasetService {
return
lazyLoad
(
datasetRepository
.
save
(
loaded
));
return
lazyLoad
(
datasetRepository
.
save
(
loaded
));
}
}
/**
* {@inheritDoc}
*/
@Override
public
long
countPublished
()
{
return
datasetRepository
.
count
(
dataset
.
state
.
in
(
PublishState
.
PUBLISHED
));
}
/**
/**
* {@inheritDoc}
* {@inheritDoc}
*/
*/
...
...
src/main/java/org/genesys/catalog/service/impl/DescriptorServiceImpl.java
View file @
f8b32747
...
@@ -26,7 +26,6 @@ import java.util.UUID;
...
@@ -26,7 +26,6 @@ import java.util.UUID;
import
javax.persistence.EntityManager
;
import
javax.persistence.EntityManager
;
import
com.querydsl.core.types.Predicate
;
import
org.genesys.catalog.exceptions.InvalidApiUsageException
;
import
org.genesys.catalog.exceptions.InvalidApiUsageException
;
import
org.genesys.catalog.exceptions.NotFoundElement
;
import
org.genesys.catalog.exceptions.NotFoundElement
;
import
org.genesys.catalog.model.Partner
;
import
org.genesys.catalog.model.Partner
;
...
@@ -62,6 +61,7 @@ import org.springframework.stereotype.Service;
...
@@ -62,6 +61,7 @@ import org.springframework.stereotype.Service;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
com.querydsl.core.BooleanBuilder
;
import
com.querydsl.core.BooleanBuilder
;
import
com.querydsl.core.types.Predicate
;
/**
/**
* The Class DescriptorServiceImpl.
* The Class DescriptorServiceImpl.
...
@@ -226,13 +226,13 @@ public class DescriptorServiceImpl implements DescriptorService {
...
@@ -226,13 +226,13 @@ public class DescriptorServiceImpl implements DescriptorService {
public
Page
<
Descriptor
>
listDescriptorsForCurrentUser
(
final
DescriptorFilter
filter
,
final
Pageable
page
)
{
public
Page
<
Descriptor
>
listDescriptorsForCurrentUser
(
final
DescriptorFilter
filter
,
final
Pageable
page
)
{
if
(
securityUtils
.
hasRole
(
UserRole
.
ADMINISTRATOR
))
{
if
(
securityUtils
.
hasRole
(
UserRole
.
ADMINISTRATOR
))
{
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"title"
);
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"title"
);
Page
res
=
descriptorRepository
.
findAll
(
filter
.
buildQuery
(),
markdownSortPageRequest
);
Page
<
Descriptor
>
res
=
descriptorRepository
.
findAll
(
filter
.
buildQuery
(),
markdownSortPageRequest
);
return
new
PageImpl
<
Descriptor
>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
return
new
PageImpl
<>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
}
else
{
}
else
{
final
HashSet
<
Long
>
partners
=
new
HashSet
<>(
securityUtils
.
listObjectIdentityIdsForCurrentUser
(
Partner
.
class
,
BasePermission
.
WRITE
));
final
HashSet
<
Long
>
partners
=
new
HashSet
<>(
securityUtils
.
listObjectIdentityIdsForCurrentUser
(
Partner
.
class
,
BasePermission
.
WRITE
));
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"title"
);
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"title"
);
Page
res
=
descriptorRepository
.
findAll
(
descriptor
.
owner
.
id
.
in
(
partners
).
and
(
filter
.
buildQuery
()),
markdownSortPageRequest
);
Page
<
Descriptor
>
res
=
descriptorRepository
.
findAll
(
descriptor
.
owner
.
id
.
in
(
partners
).
and
(
filter
.
buildQuery
()),
markdownSortPageRequest
);
return
new
PageImpl
<
Descriptor
>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
return
new
PageImpl
<>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
}
}
}
}
...
@@ -242,8 +242,8 @@ public class DescriptorServiceImpl implements DescriptorService {
...
@@ -242,8 +242,8 @@ public class DescriptorServiceImpl implements DescriptorService {
@Override
@Override
public
Page
<
Descriptor
>
listDescriptors
(
final
DescriptorFilter
descriptorFilter
,
final
Pageable
page
)
{
public
Page
<
Descriptor
>
listDescriptors
(
final
DescriptorFilter
descriptorFilter
,
final
Pageable
page
)
{
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"title"
);
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"title"
);
Page
res
=
descriptorRepository
.
findAll
(
new
BooleanBuilder
().
and
(
descriptorFilter
.
buildQuery
()).
and
(
QDescriptor
.
descriptor
.
state
.
in
(
PublishState
.
PUBLISHED
)),
markdownSortPageRequest
);
Page
<
Descriptor
>
res
=
descriptorRepository
.
findAll
(
new
BooleanBuilder
().
and
(
descriptorFilter
.
buildQuery
()).
and
(
QDescriptor
.
descriptor
.
state
.
in
(
PublishState
.
PUBLISHED
)),
markdownSortPageRequest
);
return
new
PageImpl
<
Descriptor
>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
return
new
PageImpl
<>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
}
}
/**
/**
...
@@ -458,8 +458,8 @@ public class DescriptorServiceImpl implements DescriptorService {
...
@@ -458,8 +458,8 @@ public class DescriptorServiceImpl implements DescriptorService {
}
}
@Override
@Override
public
long
count
Published
(
)
{
public
long
count
Descriptors
(
DescriptorFilter
filter
)
{
return
descriptorRepository
.
count
(
descriptor
.
state
.
eq
(
PublishState
.
PUBLISHED
));
return
descriptorRepository
.
count
(
filter
.
buildQuery
(
));
}
}
}
}
src/main/java/org/genesys/catalog/service/impl/PartnerServiceImpl.java
View file @
f8b32747
...
@@ -26,7 +26,6 @@ import org.genesys.catalog.persistence.PartnerRepository;
...
@@ -26,7 +26,6 @@ import org.genesys.catalog.persistence.PartnerRepository;
import
org.genesys.catalog.service.PartnerService
;
import
org.genesys.catalog.service.PartnerService
;
import
org.genesys2.server.model.UserRole
;
import
org.genesys2.server.model.UserRole
;
import
org.genesys2.server.security.SecurityUtils
;
import
org.genesys2.server.security.SecurityUtils
;
import
org.genesys2.server.service.ElasticsearchService
;
import
org.genesys2.util.JPAUtils
;
import
org.genesys2.util.JPAUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -59,9 +58,6 @@ public class PartnerServiceImpl implements PartnerService, InitializingBean {
...
@@ -59,9 +58,6 @@ public class PartnerServiceImpl implements PartnerService, InitializingBean {
@Autowired
@Autowired
private
SecurityUtils
securityUtils
;
private
SecurityUtils
securityUtils
;
@Autowired
private
ElasticsearchService
elasticsearchService
;
@Value
(
"${partner.primary.uuid}"
)
@Value
(
"${partner.primary.uuid}"
)
private
UUID
primaryPartnerUuid
;
private
UUID
primaryPartnerUuid
;
...
@@ -147,13 +143,13 @@ public class PartnerServiceImpl implements PartnerService, InitializingBean {
...
@@ -147,13 +143,13 @@ public class PartnerServiceImpl implements PartnerService, InitializingBean {
public
Page
<
Partner
>
listPartnersForCurrentUser
(
final
PartnerFilter
filter
,
final
Pageable
page
)
{
public
Page
<
Partner
>
listPartnersForCurrentUser
(
final
PartnerFilter
filter
,
final
Pageable
page
)
{
if
(
securityUtils
.
hasRole
(
UserRole
.
ADMINISTRATOR
))
{
if
(
securityUtils
.
hasRole
(
UserRole
.
ADMINISTRATOR
))
{
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"name"
);
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"name"
);
Page
res
=
partnerRepository
.
findAll
(
filter
.
buildQuery
(),
markdownSortPageRequest
);
Page
<
Partner
>
res
=
partnerRepository
.
findAll
(
filter
.
buildQuery
(),
markdownSortPageRequest
);
return
new
PageImpl
<
Partner
>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
return
new
PageImpl
<>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
}
else
{
}
else
{
final
HashSet
<
Long
>
ids
=
new
HashSet
<>(
securityUtils
.
listObjectIdentityIdsForCurrentUser
(
Partner
.
class
,
BasePermission
.
WRITE
));
final
HashSet
<
Long
>
ids
=
new
HashSet
<>(
securityUtils
.
listObjectIdentityIdsForCurrentUser
(
Partner
.
class
,
BasePermission
.
WRITE
));
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"name"
);
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"name"
);
Page
res
=
partnerRepository
.
findAll
(
partner
.
id
.
in
(
ids
).
and
(
filter
.
buildQuery
()),
markdownSortPageRequest
);
Page
<
Partner
>
res
=
partnerRepository
.
findAll
(
partner
.
id
.
in
(
ids
).
and
(
filter
.
buildQuery
()),
markdownSortPageRequest
);
return
new
PageImpl
<
Partner
>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
return
new
PageImpl
<>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
}
}
}
}
...
@@ -163,8 +159,8 @@ public class PartnerServiceImpl implements PartnerService, InitializingBean {
...
@@ -163,8 +159,8 @@ public class PartnerServiceImpl implements PartnerService, InitializingBean {
@Override
@Override
public
Page
<
Partner
>
listPartners
(
final
PartnerFilter
partnerFilter
,
final
Pageable
page
)
{
public
Page
<
Partner
>
listPartners
(
final
PartnerFilter
partnerFilter
,
final
Pageable
page
)
{
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"name"
);
Pageable
markdownSortPageRequest
=
JPAUtils
.
toMarkdownSort
(
page
,
"name"
);
Page
res
=
partnerRepository
.
findAll
(
partnerFilter
.
buildQuery
(),
markdownSortPageRequest
);
Page
<
Partner
>
res
=
partnerRepository
.
findAll
(
partnerFilter
.
buildQuery
(),
markdownSortPageRequest
);
return
new
PageImpl
<
Partner
>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
return
new
PageImpl
<>(
res
.
getContent
(),
page
,
res
.
getTotalElements
());
}
}
/**
/**
...
@@ -226,14 +222,7 @@ public class PartnerServiceImpl implements PartnerService, InitializingBean {
...
@@ -226,14 +222,7 @@ public class PartnerServiceImpl implements PartnerService, InitializingBean {
@Override
@Override
public
long
countPartners
(
PartnerFilter
filter
)
{
public
long
countPartners
(
PartnerFilter
filter
)
{
long
total
=
elasticsearchService
.
count
(
Partner
.
class
,
filter
);
return
partnerRepository
.
count
(
filter
.
buildQuery
());
if
(
total
<
10000
)
{
// If total is below 10K, use actual count
total
=
partnerRepository
.
count
(
filter
.
buildQuery
());
}
return
total
;
}
}
/**
/**
...
...
src/main/java/org/genesys2/server/api/v1/ApiInfoController.java
View file @
f8b32747
package
org.genesys2.server.api.v1
;
package
org.genesys2.server.api.v1
;
import
io.swagger.annotations.Api
;
import
org.genesys.catalog.model.filters.DatasetFilter
;
import
org.genesys.catalog.model.filters.DescriptorFilter
;
import
org.genesys.catalog.model.filters.PartnerFilter
;
import
org.genesys.catalog.model.filters.PartnerFilter
;
import
org.genesys.catalog.service.DatasetService
;
import
org.genesys.catalog.service.DatasetService
;
import
org.genesys.catalog.service.DescriptorService
;
import
org.genesys.catalog.service.DescriptorService
;
import
org.genesys.catalog.service.PartnerService
;
import
org.genesys.catalog.service.PartnerService
;
import
org.genesys2.server.api.ApiBaseController
;
import
org.genesys2.server.api.ApiBaseController
;
import
org.genesys2.server.model.PublishState
;
import
org.genesys2.server.service.AccessionService
;
import
org.genesys2.server.service.AccessionService
;
import
org.genesys2.server.service.InstituteService
;
import
org.genesys2.server.service.InstituteService
;
import
org.genesys2.server.service.SubsetService
;
import
org.genesys2.server.service.SubsetService
;
import
org.genesys2.server.service.filter.AccessionFilter
;
import
org.genesys2.server.service.filter.AccessionFilter
;
import
org.slf4j.Logger
;
import
org.genesys2.server.service.filter.SubsetFilter
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.InitializingBean
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.security.access.prepost.PreAuthorize
;
...
@@ -20,7 +20,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
...
@@ -20,7 +20,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.net.UnknownHostException
;
import
io.swagger.annotations.Api
;
/**
/**
* Accession API v1
* Accession API v1
...
@@ -31,8 +31,6 @@ import java.net.UnknownHostException;
...
@@ -31,8 +31,6 @@ import java.net.UnknownHostException;
@Api
(
tags
=
{
"api-info"
})
@Api
(
tags
=
{
"api-info"
})
public
class
ApiInfoController
{
public
class
ApiInfoController
{
private
static
final
Logger
LOG
=
LoggerFactory
.
getLogger
(
ApiInfoController
.
class
);
public
static
final
String
CONTROLLER_URL
=
ApiBaseController
.
APIv1_BASE
+
"/info"
;
public
static
final
String
CONTROLLER_URL
=
ApiBaseController
.
APIv1_BASE
+
"/info"
;
@Value
(
"${build.version}"
)
@Value
(
"${build.version}"
)
...
@@ -44,6 +42,9 @@ public class ApiInfoController {
...
@@ -44,6 +42,9 @@ public class ApiInfoController {
@Value
(
"${build.revision}"
)
@Value
(
"${build.revision}"
)
private
String
revision
;
private
String
revision
;
@Value
(
"${base.url}"
)
private
String
baseUrl
;
@Value
(
"${cdn.servers}"
)
@Value
(
"${cdn.servers}"
)
private
String
[]
cdnServers
;
private
String
[]
cdnServers
;
...
@@ -67,25 +68,17 @@ public class ApiInfoController {
...
@@ -67,25 +68,17 @@ public class ApiInfoController {
*/
*/
@RequestMapping
(
value
=
"/version"
,
method
=
RequestMethod
.
GET
)
@RequestMapping
(
value
=
"/version"
,
method
=
RequestMethod
.
GET
)
public
ApiInfo
apiInfo
()
{
public
ApiInfo
apiInfo
()
{
String
hN
;
ApiInfo
apiInfo
=
new
ApiInfo
();
try
{
hN
=
java
.
net
.
InetAddress
.
getLocalHost
().
getHostName
();
}
catch
(
final
UnknownHostException
e
)
{
LOG
.
error
(
"Error getting Host Name"
);
hN
=
""
;
}
ApiInfo
apiInfo
=
new
ApiInfo
();
apiInfo
.
version
=
this
.
version
;
apiInfo
.
version
=
this
.
version
;
apiInfo
.
artifactId
=
this
.
artifactId
;
apiInfo
.
artifactId
=
this
.
artifactId
;
apiInfo
.
revision
=
this
.
revision
;
apiInfo
.
revision
=
this
.
revision
;
apiInfo
.
cdnServers
=
this
.
cdnServers
;
apiInfo
.
cdnServers
=
this
.
cdnServers
;
apiInfo
.
hostName
=
hN
;
apiInfo
.
baseUrl
=
this
.
baseUrl
;
apiInfo
.
accessionCount
=
accessionService
.
countAccessions
(
new
AccessionFilter
());
apiInfo
.
accessionCount
=
accessionService
.
countAccessions
(
new
AccessionFilter
()
.
historic
(
false
)
);
apiInfo
.
datasetCount
=
datasetService
.
count
Published
(
);
apiInfo
.
datasetCount
=
datasetService
.
count
Datasets
(
new
DatasetFilter
().
state
(
PublishState
.
PUBLISHED
)
);
apiInfo
.
subsetCount
=
subsetService
.
count
Published
(
);
apiInfo
.
subsetCount
=
subsetService
.
count
Subsets
(
new
SubsetFilter
().
state
(
PublishState
.
PUBLISHED
)
);
apiInfo
.
instituteCount
=
instituteService
.
countActive
();
apiInfo
.
instituteCount
=
instituteService
.
countActive
();
apiInfo
.
descriptorCount
=
descriptorService
.
count
Published
(
);
apiInfo
.
descriptorCount
=
descriptorService
.
count
Descriptors
(
new
DescriptorFilter
().
state
(
PublishState
.
PUBLISHED
)
);
apiInfo
.
partnerCount
=
partnerService
.
countPartners
(
new
PartnerFilter
());
apiInfo
.
partnerCount
=
partnerService
.
countPartners
(
new
PartnerFilter
());
return
apiInfo
;
return
apiInfo
;
...
@@ -98,7 +91,7 @@ public class ApiInfoController {
...
@@ -98,7 +91,7 @@ public class ApiInfoController {
public
String
artifactId
;
public
String
artifactId
;
public
String
version
;
public
String
version
;
public
String
revision
;
public
String
revision
;
public
String
hostName
;
public
String
baseUrl
;
public
String
[]
cdnServers
;
public
String
[]
cdnServers
;
public
long
accessionCount
;
public
long
accessionCount
;
...
...
src/main/java/org/genesys2/server/service/SubsetService.java
View file @
f8b32747
...
@@ -43,11 +43,12 @@ public interface SubsetService {
...
@@ -43,11 +43,12 @@ public interface SubsetService {
Page
<
Subset
>
list
(
SubsetFilter
filter
,
Pageable
page
);
Page
<
Subset
>
list
(
SubsetFilter
filter
,
Pageable
page
);
/**
/**
* Co
nt published subsets
* Co
unt published subsets.
*
*
* @param filter the filter
* @return the number of published subsets
* @return the number of published subsets
*/
*/
long
count
Published
(
);
long
count
Subsets
(
SubsetFilter
filter
);
/**
/**
* List current user's subsets matching the filter.
* List current user's subsets matching the filter.
...
...
src/main/java/org/genesys2/server/service/filter/AccessionFilter.java
View file @
f8b32747
...
@@ -15,7 +15,7 @@
...
@@ -15,7 +15,7 @@
*/
*/
package
org.genesys2.server.service.filter
;
package
org.genesys2.server.service.filter
;
import
static
org
.
genesys2
.
server
.
model
.
genesys
.
QAccession
.
*
;
import
static
org
.
genesys2
.
server
.
model
.
genesys
.
QAccession
.
accession
;
import
java.util.Set
;
import
java.util.Set
;
import
java.util.UUID
;
import
java.util.UUID
;
...
@@ -169,4 +169,9 @@ public class AccessionFilter extends UuidModelFilter<AccessionFilter, Accession>
...
@@ -169,4 +169,9 @@ public class AccessionFilter extends UuidModelFilter<AccessionFilter, Accession>
}
}
}
}
public
AccessionFilter
historic
(
Boolean
historic
)
{
this
.
historic
=
historic
;
return
this
;
}
}
}
src/main/java/org/genesys2/server/service/filter/SubsetFilter.java
View file @
f8b32747
...
@@ -17,6 +17,7 @@ package org.genesys2.server.service.filter;
...
@@ -17,6 +17,7 @@ package org.genesys2.server.service.filter;
import
static
org
.
genesys2
.
server
.
model
.
impl
.
QSubset
.
subset
;
import
static
org
.
genesys2
.
server
.
model
.
impl
.
QSubset
.
subset
;
import
java.util.HashSet
;
import
java.util.Set
;
import
java.util.Set
;
import
org.genesys.blocks.model.filters.StringFilter
;
import
org.genesys.blocks.model.filters.StringFilter
;
...
@@ -93,4 +94,14 @@ public class SubsetFilter extends UuidModelFilter<SubsetFilter, Subset> {
...
@@ -93,4 +94,14 @@ public class SubsetFilter extends UuidModelFilter<SubsetFilter, Subset> {
}
}
return
and
;
return
and
;
}
}
public
SubsetFilter
state
(
PublishState
...
state
)
{
if
(
this
.
state
==
null
)
{
this
.
state
=
new
HashSet
<>();
}
for
(
PublishState
s
:
state
)
{
this
.
state
.
add
(
s
);
}
return
this
;
}
}
}
src/main/java/org/genesys2/server/service/impl/StatisticsServiceImpl.java
View file @
f8b32747
...
@@ -16,10 +16,12 @@
...
@@ -16,10 +16,12 @@
package
org.genesys2.server.service.impl
;
package
org.genesys2.server.service.impl
;
import
org.genesys2.server.model.PublishState
;
import
org.genesys2.server.model.genesys.PDCIStatistics
;
import
org.genesys2.server.model.genesys.PDCIStatistics
;
import
org.genesys2.server.model.genesys.PhenoStatistics
;
import
org.genesys2.server.model.genesys.PhenoStatistics
;
import
org.genesys2.server.model.impl.FaoInstitute
;
import
org.genesys2.server.model.impl.FaoInstitute
;
import
org.genesys2.server.model.impl.Organization
;
import
org.genesys2.server.model.impl.Organization
;