@@ -711,7 +711,7 @@ static String interpretPolylineOptions(
711
711
sink .setWidth (polyline .getWidth ());
712
712
sink .setZIndex (polyline .getZIndex ());
713
713
sink .setPoints (pointsFromPigeon (polyline .getPoints ()));
714
- sink .setPattern (toPattern (polyline .getPatterns ()));
714
+ sink .setPattern (patternFromPigeon (polyline .getPatterns ()));
715
715
return polyline .getPolylineId ();
716
716
}
717
717
@@ -850,32 +850,27 @@ private static List<List<LatLng>> toHoles(List<List<Messages.PlatformLatLng>> da
850
850
return holes ;
851
851
}
852
852
853
- private static List <PatternItem > toPattern (Object o ) {
854
- final List <?> data = toList (o );
855
-
856
- if (data .isEmpty ()) {
853
+ private static List <PatternItem > patternFromPigeon (
854
+ List <Messages .PlatformPatternItem > patternItems ) {
855
+ if (patternItems .isEmpty ()) {
857
856
return null ;
858
857
}
859
-
860
- final List <PatternItem > pattern = new ArrayList <>(data .size ());
861
-
862
- for (Object ob : data ) {
863
- final List <?> patternItem = toList (ob );
864
- switch (toString (patternItem .get (0 ))) {
865
- case "dot" :
858
+ final List <PatternItem > pattern = new ArrayList <>();
859
+ for (Messages .PlatformPatternItem patternItem : patternItems ) {
860
+ switch (patternItem .getType ()) {
861
+ case DOT :
866
862
pattern .add (new Dot ());
867
863
break ;
868
- case "dash" :
869
- pattern .add (new Dash (toFloat (patternItem .get (1 ))));
864
+ case DASH :
865
+ assert patternItem .getLength () != null ;
866
+ pattern .add (new Dash (patternItem .getLength ().floatValue ()));
870
867
break ;
871
- case "gap" :
872
- pattern .add (new Gap (toFloat (patternItem .get (1 ))));
868
+ case GAP :
869
+ assert patternItem .getLength () != null ;
870
+ pattern .add (new Gap (patternItem .getLength ().floatValue ()));
873
871
break ;
874
- default :
875
- throw new IllegalArgumentException ("Cannot interpret " + pattern + " as PatternItem" );
876
872
}
877
873
}
878
-
879
874
return pattern ;
880
875
}
881
876
0 commit comments