6
6
7
7
import java .util .ArrayList ;
8
8
import java .util .HashSet ;
9
+ import java .util .List ;
9
10
10
11
public class CustomFormResponse extends Response <CustomFormHandler > {
11
12
@@ -38,6 +39,14 @@ public <T extends CustomFormElement> T get(String elementId, Class<T> clazz){
38
39
return clazz .cast (get (elementId ));
39
40
}
40
41
42
+ public <T extends CustomFormElement > List <T > get (Class <T > clazz ){
43
+ ArrayList <T > list = new ArrayList <>();
44
+ for (CustomFormElement element : elements ){
45
+ if (clazz .isInstance (element )) list .add (clazz .cast (element ));
46
+ }
47
+ return list ;
48
+ }
49
+
41
50
public Label getLabel (int index ){
42
51
return (Label ) elements .get (index );
43
52
}
@@ -46,6 +55,10 @@ public Label getLabel(String elementId){
46
55
return get (elementId , Label .class );
47
56
}
48
57
58
+ public List <Label > getLabels (){
59
+ return get (Label .class );
60
+ }
61
+
49
62
public Input getInput (int index ){
50
63
return (Input ) elements .get (index );
51
64
}
@@ -54,6 +67,10 @@ public Input getInput(String elementId){
54
67
return get (elementId , Input .class );
55
68
}
56
69
70
+ public List <Input > getInputs (){
71
+ return get (Input .class );
72
+ }
73
+
57
74
public Toggle getToggle (int index ){
58
75
return (Toggle ) elements .get (index );
59
76
}
@@ -62,6 +79,10 @@ public Toggle getToggle(String elementId){
62
79
return get (elementId , Toggle .class );
63
80
}
64
81
82
+ public List <Toggle > getToggles (){
83
+ return get (Toggle .class );
84
+ }
85
+
65
86
public StepSlider getStepSlider (int index ){
66
87
return (StepSlider ) elements .get (index );
67
88
}
@@ -70,6 +91,10 @@ public StepSlider getStepSlider(String elementId){
70
91
return get (elementId , StepSlider .class );
71
92
}
72
93
94
+ public List <StepSlider > getStepSliders (){
95
+ return get (StepSlider .class );
96
+ }
97
+
73
98
public Dropdown getDropdown (int index ){
74
99
return (Dropdown ) elements .get (index );
75
100
}
@@ -78,6 +103,10 @@ public Dropdown getDropdown(String elementId){
78
103
return get (elementId , Dropdown .class );
79
104
}
80
105
106
+ public List <Dropdown > getDropdowns (){
107
+ return get (Dropdown .class );
108
+ }
109
+
81
110
@ Override
82
111
public void handle (Player player ) {
83
112
if (handler == null ) return ;
0 commit comments