File tree Expand file tree Collapse file tree 5 files changed +105
-1
lines changed
src/main/java/com/sanvalero/javafxobservablelist Expand file tree Collapse file tree 5 files changed +105
-1
lines changed Original file line number Diff line number Diff line change
1
+ <?xml version =" 1.0" encoding =" UTF-8" ?>
2
+ <project xmlns =" http://maven.apache.org/POM/4.0.0"
3
+ xmlns : xsi =" http://www.w3.org/2001/XMLSchema-instance"
4
+ xsi : schemaLocation =" http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" >
5
+ <modelVersion >4.0.0</modelVersion >
6
+
7
+ <groupId >org.example</groupId >
8
+ <artifactId >JavaFXObservableList</artifactId >
9
+ <version >1.0-SNAPSHOT</version >
10
+
11
+ <properties >
12
+ <maven .compiler.source>11</maven .compiler.source>
13
+ <maven .compiler.target>11</maven .compiler.target>
14
+ </properties >
15
+
16
+ <dependencies >
17
+ <dependency >
18
+ <groupId >org.projectlombok</groupId >
19
+ <artifactId >lombok</artifactId >
20
+ <version >1.18.18</version >
21
+ </dependency >
22
+ <dependency >
23
+ <groupId >org.openjfx</groupId >
24
+ <artifactId >javafx-controls</artifactId >
25
+ <version >14</version >
26
+ </dependency >
27
+
28
+ </dependencies >
29
+
30
+ </project >
Original file line number Diff line number Diff line change
1
+ package com .sanvalero .javafxobservablelist ;
2
+
3
+ import com .sanvalero .javafxobservablelist .domain .Cinema ;
4
+ import com .sanvalero .javafxobservablelist .domain .Movie ;
5
+ import javafx .collections .FXCollections ;
6
+ import javafx .collections .ObservableList ;
7
+
8
+ public class Application {
9
+ public static void main (String [] args ) {
10
+ Movie movie = Movie .builder ()
11
+ .title ("Rocky" )
12
+ .summary ("Pelicula de boxeo" )
13
+ .duration (120 )
14
+ .build ();
15
+ Cinema cinema = Cinema .builder ()
16
+ .name ("Cinema1" )
17
+ .build ();
18
+ ObservableList <Movie > movies = FXCollections .observableArrayList (movie );
19
+ movies .addListener (cinema );
20
+
21
+ movies .remove (0 );
22
+ movies .add (Movie .builder ().title ("Terminator 2" ).build ());
23
+ }
24
+ }
Original file line number Diff line number Diff line change
1
+ package com .sanvalero .javafxobservablelist .domain ;
2
+
3
+ import javafx .collections .ListChangeListener ;
4
+ import lombok .Builder ;
5
+ import lombok .Data ;
6
+ import lombok .EqualsAndHashCode ;
7
+ import lombok .ToString ;
8
+
9
+ @ Data
10
+ @ Builder
11
+ @ ToString
12
+ @ EqualsAndHashCode
13
+ public class Cinema implements ListChangeListener <Movie > {
14
+
15
+ private String name ;
16
+ @ EqualsAndHashCode .Exclude
17
+ private String address ;
18
+
19
+ @ Override
20
+ public void onChanged (Change <? extends Movie > change ) {
21
+ while (change .next ()) {
22
+ if (change .wasRemoved ()) {
23
+ System .out .println ("Se ha eliminado una pelicula: " + change .getRemoved ().get (0 ));
24
+ } else if (change .wasAdded ()) {
25
+ System .out .println ("Se estrena una nueva pelicula: " + change .getAddedSubList ().get (0 ));
26
+ }
27
+ }
28
+ }
29
+ }
Original file line number Diff line number Diff line change
1
+ package com .sanvalero .javafxobservablelist .domain ;
2
+
3
+ import lombok .Builder ;
4
+ import lombok .Data ;
5
+ import lombok .EqualsAndHashCode ;
6
+ import lombok .ToString ;
7
+
8
+ @ Data
9
+ @ Builder
10
+ @ ToString
11
+ @ EqualsAndHashCode
12
+ public class Movie {
13
+
14
+ private String title ;
15
+ @ EqualsAndHashCode .Exclude
16
+ private String summary ;
17
+ @ EqualsAndHashCode .Exclude
18
+ private int duration ;
19
+ }
Original file line number Diff line number Diff line change 1
1
# java-reactiva
2
- Proyectos de ejemplo de Programación Reactiva
2
+ Proyectos de ejemplo de Programación Reactiva.
3
+ También habrá algunos proyectos sobre Patrón Observer, Streams, Future y CompletableFuture a modo de introducción
3
4
5
+ - ** JavaFXObservableList** : Proyecto de ejemplo de Patrón Observer con ObservableList de JavaFX
4
6
- ** IntroRxJava** : Proyecto con ejemplos de introducción a RxJava
5
7
- ** EjemploRetroFit** : Ejemplo de cómo consumir una API utilizando RetroFit
6
8
- ** EjemploRetroFitRxJava** : Ejemplo de cómo consumir una API utilizando RetroFix y RxJava
You can’t perform that action at this time.
0 commit comments