File tree Expand file tree Collapse file tree 12 files changed +23
-38
lines changed
bitcoin-api/src/main/java/com/ivanfranchin/bitcoinapi
bitcoin-client/src/main/java/com/ivanfranchin/bitcoinclient Expand file tree Collapse file tree 12 files changed +23
-38
lines changed Original file line number Diff line number Diff line change 1
- package com .ivanfranchin .bitcoinapi .rest ;
1
+ package com .ivanfranchin .bitcoinapi .price ;
2
2
3
- import com .ivanfranchin .bitcoinapi .model .Price ;
4
- import com .ivanfranchin .bitcoinapi .rest .dto .PriceResponse ;
5
- import com .ivanfranchin .bitcoinapi .service .PriceService ;
6
- import io .swagger .v3 .oas .annotations .Operation ;
3
+ import com .ivanfranchin .bitcoinapi .price .dto .PriceResponse ;
4
+ import com .ivanfranchin .bitcoinapi .price .model .Price ;
7
5
import lombok .RequiredArgsConstructor ;
8
6
import org .springframework .web .bind .annotation .GetMapping ;
9
7
import org .springframework .web .bind .annotation .RequestMapping ;
@@ -16,7 +14,6 @@ public class PriceController {
16
14
17
15
private final PriceService priceService ;
18
16
19
- @ Operation (summary = "Get last price" )
20
17
@ GetMapping ("/last" )
21
18
public PriceResponse getLastPrice () {
22
19
Price price = priceService .getLastPrice ();
Original file line number Diff line number Diff line change 1
- package com .ivanfranchin .bitcoinapi .kafka ;
1
+ package com .ivanfranchin .bitcoinapi .price ;
2
2
3
- import com .ivanfranchin .bitcoinapi .model .Price ;
3
+ import com .ivanfranchin .bitcoinapi .price .message .PriceMessage ;
4
+ import com .ivanfranchin .bitcoinapi .price .model .Price ;
4
5
import lombok .RequiredArgsConstructor ;
5
6
import lombok .extern .slf4j .Slf4j ;
6
7
import org .springframework .cloud .stream .function .StreamBridge ;
9
10
@ Slf4j
10
11
@ RequiredArgsConstructor
11
12
@ Component
12
- public class PriceStreamer {
13
+ public class PriceEmitter {
13
14
14
15
private final StreamBridge streamBridge ;
15
16
Original file line number Diff line number Diff line change 1
- package com .ivanfranchin .bitcoinapi .repository ;
1
+ package com .ivanfranchin .bitcoinapi .price ;
2
2
3
- import com .ivanfranchin .bitcoinapi .model .Price ;
3
+ import com .ivanfranchin .bitcoinapi .price . model .Price ;
4
4
import org .springframework .data .repository .CrudRepository ;
5
5
import org .springframework .stereotype .Repository ;
6
6
Original file line number Diff line number Diff line change 1
- package com .ivanfranchin .bitcoinapi .service ;
1
+ package com .ivanfranchin .bitcoinapi .price ;
2
2
3
- import com .ivanfranchin .bitcoinapi .model .Price ;
4
- import com .ivanfranchin .bitcoinapi .repository .PriceRepository ;
3
+ import com .ivanfranchin .bitcoinapi .price .model .Price ;
5
4
import lombok .RequiredArgsConstructor ;
6
5
import org .springframework .stereotype .Service ;
7
6
8
7
@ RequiredArgsConstructor
9
8
@ Service
10
- public class PriceServiceImpl implements PriceService {
9
+ public class PriceService {
11
10
12
11
private final PriceRepository priceRepository ;
13
12
14
- @ Override
15
13
public Price getLastPrice () {
16
14
return priceRepository .findTopByOrderByTimestampDesc ();
17
15
}
18
16
19
- @ Override
20
17
public Price savePrice (Price price ) {
21
18
return priceRepository .save (price );
22
19
}
Original file line number Diff line number Diff line change 1
- package com .ivanfranchin .bitcoinapi .rest .dto ;
1
+ package com .ivanfranchin .bitcoinapi .price .dto ;
2
2
3
3
import java .math .BigDecimal ;
4
4
import java .time .LocalDateTime ;
Original file line number Diff line number Diff line change 1
- package com .ivanfranchin .bitcoinapi .kafka ;
1
+ package com .ivanfranchin .bitcoinapi .price . message ;
2
2
3
3
import java .math .BigDecimal ;
4
4
import java .time .LocalDateTime ;
Original file line number Diff line number Diff line change 1
- package com .ivanfranchin .bitcoinapi .model ;
1
+ package com .ivanfranchin .bitcoinapi .price . model ;
2
2
3
3
import jakarta .persistence .Column ;
4
4
import jakarta .persistence .Entity ;
Original file line number Diff line number Diff line change 1
1
package com .ivanfranchin .bitcoinapi .runner ;
2
2
3
- import com .ivanfranchin .bitcoinapi .model .Price ;
4
- import com .ivanfranchin .bitcoinapi .service .PriceService ;
3
+ import com .ivanfranchin .bitcoinapi .price . model .Price ;
4
+ import com .ivanfranchin .bitcoinapi .price .PriceService ;
5
5
import lombok .RequiredArgsConstructor ;
6
6
import org .springframework .boot .CommandLineRunner ;
7
7
import org .springframework .stereotype .Component ;
Original file line number Diff line number Diff line change 1
1
package com .ivanfranchin .bitcoinapi .scheduler ;
2
2
3
- import com .ivanfranchin .bitcoinapi .kafka . PriceStreamer ;
4
- import com .ivanfranchin .bitcoinapi .model .Price ;
5
- import com .ivanfranchin .bitcoinapi .service .PriceService ;
3
+ import com .ivanfranchin .bitcoinapi .price . PriceEmitter ;
4
+ import com .ivanfranchin .bitcoinapi .price . model .Price ;
5
+ import com .ivanfranchin .bitcoinapi .price .PriceService ;
6
6
import lombok .RequiredArgsConstructor ;
7
7
import lombok .extern .slf4j .Slf4j ;
8
8
import org .springframework .scheduling .annotation .Scheduled ;
20
20
public class PriceScheduler {
21
21
22
22
private final PriceService priceService ;
23
- private final PriceStreamer priceStreamer ;
23
+ private final PriceEmitter priceStreamer ;
24
24
25
25
@ Scheduled (cron = "*/5 * * * * *" ) // every 5 seconds
26
26
public void streamNewPrice () {
Load Diff This file was deleted.
Original file line number Diff line number Diff line change 10
10
11
11
@ RequiredArgsConstructor
12
12
@ Controller
13
- public class PriceController {
13
+ public class UIController {
14
14
15
15
private final SimpMessagingTemplate simpMessagingTemplate ;
16
16
Original file line number Diff line number Diff line change 16
16
@ Slf4j
17
17
@ RequiredArgsConstructor
18
18
@ Component
19
- public class PriceStream {
19
+ public class PriceListener {
20
20
21
21
private final SimpMessagingTemplate simpMessagingTemplate ;
22
22
You can’t perform that action at this time.
0 commit comments