Skip to content
This repository was archived by the owner on Jul 1, 2025. It is now read-only.

Commit 2d44e0f

Browse files
committed
coding complete on Bulk features
1 parent 4709780 commit 2d44e0f

File tree

10 files changed

+35
-8
lines changed

10 files changed

+35
-8
lines changed

src/main/java/org/energyos/espi/common/domain/Authorization.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,10 @@
137137
@NamedQuery(name = Authorization.QUERY_FIND_BY_REFRESH_TOKEN,
138138
query = "SELECT authorization from Authorization authorization WHERE authorization.refreshToken = :refreshToken"),
139139
@NamedQuery(name = Authorization.QUERY_FIND_BY_RESOURCE_URI,
140-
query = "SELECT authorization FROM Authorization authorization WHERE authorization.resourceURI = :uri")
140+
query = "SELECT authorization FROM Authorization authorization WHERE authorization.resourceURI = :uri"),
141+
@NamedQuery(name = Authorization.QUERY_FIND_ALL_IDS_BY_BULK_ID,
142+
query = "SELECT authorization.id FROM Authorization authorization WHERE authorization.thirdParty = :thirdParty AND authorization.scope LIKE :bulkId")
143+
141144
})
142145
public class Authorization
143146
extends IdentifiedObject {
@@ -151,6 +154,7 @@ public class Authorization
151154
public final static String QUERY_FIND_BY_ACCESS_TOKEN = "Authorization.findByAccessToken";
152155
public final static String QUERY_FIND_BY_REFRESH_TOKEN = "Authorization.findByRefreshToken";
153156
public static final String QUERY_FIND_BY_RESOURCE_URI = "Authorization.findByResourceUri";
157+
public static final String QUERY_FIND_ALL_IDS_BY_BULK_ID = "Authorization.findAllIdsByBulkId";
154158

155159
@Embedded
156160
@AttributeOverrides({

src/main/java/org/energyos/espi/common/domain/Subscription.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@
7575
@NamedQuery(name = Subscription.QUERY_FIND_BY_HASHED_ID, query = "SELECT subscription FROM Subscription subscription WHERE subscription.hashedId = :hashedId"),
7676
@NamedQuery(name = Subscription.QUERY_FIND_ALL_IDS, query = "SELECT subscription.id FROM Subscription subscription"),
7777
@NamedQuery(name = Subscription.QUERY_FIND_BY_AUTHORIZATION_ID, query = "SELECT subscription from Subscription subscription WHERE subscription.authorization.id = :id")
78-
})
78+
})
7979

8080
public class Subscription
8181
extends IdentifiedObject {

src/main/java/org/energyos/espi/common/repositories/AuthorizationRepository.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,5 +48,7 @@ public interface AuthorizationRepository {
4848
Authorization findByAccessToken(String accessToken);
4949

5050
Authorization findByRefreshToken(String refreshToken);
51+
52+
public List<Long> findAllIdsByBulkId(String thirdParty, Long bulkId);
5153

5254
}

src/main/java/org/energyos/espi/common/repositories/jpa/AuthorizationRepositoryImpl.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,4 +109,13 @@ public Authorization findByRefreshToken(String refreshToken) {
109109
.setParameter("refreshToken", refreshToken)
110110
.getSingleResult();
111111
}
112+
113+
@SuppressWarnings("unchecked")
114+
@Override
115+
public List<Long> findAllIdsByBulkId(String thirdParty, Long bulkId) {
116+
return em.createNamedQuery(Authorization.QUERY_FIND_ALL_IDS_BY_BULK_ID)
117+
.setParameter("thirdParty", thirdParty)
118+
.setParameter("bulkId", "%BR=" + bulkId + "%")
119+
.getResultList();
120+
}
112121
}

src/main/java/org/energyos/espi/common/repositories/jpa/SubscriptionRepositoryImpl.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
import org.energyos.espi.common.domain.Subscription;
1111
import org.energyos.espi.common.domain.UsagePoint;
1212
import org.energyos.espi.common.repositories.SubscriptionRepository;
13-
1413
import org.springframework.stereotype.Repository;
1514
import org.springframework.transaction.annotation.Transactional;
1615

src/main/java/org/energyos/espi/common/service/AuthorizationService.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,8 @@ public Authorization createAuthorization(Subscription subscription,
5959
Authorization findByUUID(UUID uuid);
6060

6161
public Authorization findByRefreshToken(String refreshToken);
62+
63+
public List<Long> findAllIdsByBulkId(String thirdParty, Long bulkId);
6264

6365

6466
}

src/main/java/org/energyos/espi/common/service/ExportService.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,8 +146,8 @@ void exportUsagePointsFull(Long subscriptionId, Long retailCustomerId, ServletOu
146146
void exportUsagePointFull(Long subscriptionId, Long usagePointId, Long RetailCustomerId,
147147
ServletOutputStream outputStream, ExportFilter exportFilter) throws IOException;
148148

149-
public void exportBatchBulk(long bulkId, OutputStream outputStream, ExportFilter exportFilter) throws IOException;
149+
public void exportBatchBulk(Long bulkId, String thirdParty, OutputStream outputStream, ExportFilter exportFilter) throws IOException;
150150

151-
public void exportBatchSubscription(long subscriptionId, OutputStream outputStream, ExportFilter exportFilter) throws IOException;
151+
public void exportBatchSubscription(Long subscriptionId, OutputStream outputStream, ExportFilter exportFilter) throws IOException;
152152

153153
}

src/main/java/org/energyos/espi/common/service/impl/AuthorizationServiceImpl.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -224,6 +224,11 @@ public Authorization findByRefreshToken(String refreshToken) {
224224
return authorizationRepository.findByRefreshToken(refreshToken);
225225
}
226226

227+
@Override
228+
public List<Long> findAllIdsByBulkId(String thirdParty, Long bulkId) {
229+
return authorizationRepository.findAllIdsByBulkId(thirdParty, bulkId);
230+
}
231+
227232
public void setAuthorizationRepository(AuthorizationRepository authorizationRepository) {
228233
this.authorizationRepository = authorizationRepository;
229234
}

src/main/java/org/energyos/espi/common/service/impl/ExportServiceImpl.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -651,7 +651,7 @@ public void exportSubscription(String subscriptionHashedId,
651651
}
652652

653653
@Override
654-
public void exportBatchSubscription(long subscriptionId,
654+
public void exportBatchSubscription(Long subscriptionId,
655655
OutputStream stream, ExportFilter exportFilter) throws IOException {
656656
String hrefFragment = "/Batch/Subscription/" + subscriptionId;
657657
// first find all the usagePointIds this subscription is related to
@@ -663,11 +663,15 @@ public void exportBatchSubscription(long subscriptionId,
663663
}
664664

665665
@Override
666-
public void exportBatchBulk(long bulkId, OutputStream outputStream,
666+
public void exportBatchBulk(Long bulkId, String thirdParty, OutputStream outputStream,
667667
ExportFilter exportFilter) throws IOException {
668668
// TODO Work with bulkService rather than subscriptionService
669669
String hrefFragment = "/Batch/Bulk/" + bulkId;
670-
List<Long> subscriptions = subscriptionService.findByBulkId(bulkId);
670+
List<Long> subscriptions = new ArrayList<Long> ();
671+
List<Long> authorizations = authorizationService.findAllIdsByBulkId(thirdParty, bulkId);
672+
for (Long authorizationId : authorizations) {
673+
subscriptions.add((subscriptionService.findByAuthorizationId(authorizationId)).getId());
674+
}
671675
exportEntriesFull(subscriptionService.findEntryTypeIterator(subscriptions),
672676
outputStream, exportFilter, hrefFragment);
673677
}

src/main/java/org/energyos/espi/common/service/impl/SubscriptionServiceImpl.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,4 +282,6 @@ public ImportService getImportService () {
282282
return this.importService;
283283
}
284284

285+
286+
285287
}

0 commit comments

Comments
 (0)