private static String retrieveValue()

in kit/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssValueConverter.java [403:476]


    private static String retrieveValue(String property, Object eventValue) {
        if (eventValue instanceof ParsedValue) {
            eventValue = convert((ParsedValue<?, ?>) eventValue);
        }

        if (eventValue == null) {
            return "null"; //NOI18N
        }
        StringBuilder builder = new StringBuilder();
        if (eventValue instanceof List) {
            List<?> values = (List<?>) eventValue;
            int length = values.size();
            for (int i = 0; i < length; i++) {
                String val = retrieveValue(property, values.get(i));
                builder.append(val);
                if ((i < length - 1) && val.length() > 0) {
                    builder.append(", "); //NOI18N
                }
            }
        } else if (eventValue.getClass().isArray()) {
            int length = Array.getLength(eventValue);
            for (int i = 0; i < length; i++) {
                String val = retrieveValue(property, Array.get(eventValue, i));
                builder.append(val);
                if ((i < length - 1) && val.length() > 0) {
                    builder.append(", "); //NOI18N
                }
            }
        } else if (eventValue instanceof Background) {
            Background background = (Background) eventValue;
            if (background.getFills() != null) {
                return retrieveValue(property, background.getFills());
            } else if (background.getImages() != null) {
                return retrieveValue(property, background.getImages());
            }
        } else if (eventValue instanceof Border) {
            Border border = (Border) eventValue;
            if (border.getStrokes() != null) {
                return retrieveValue(property, border.getStrokes());
            } else if (border.getImages() != null) {
                return retrieveValue(property, border.getImages());
            }
        } else if (eventValue instanceof BackgroundFill) {
            builder.append(backgroundFillToString(property, (BackgroundFill) eventValue));
        } else if (eventValue instanceof CornerRadii) {
            builder.append(cornerRadiiToString(property, (CornerRadii) eventValue));
        } else if (eventValue instanceof BackgroundImage) {
            builder.append(backgroundImageToString(property, (BackgroundImage) eventValue));
        } else if (eventValue instanceof BorderStroke) {
            builder.append(borderStrokeToString(property, (BorderStroke) eventValue));
        } else if (eventValue instanceof BorderImage) {
            builder.append(borderImageToString(property, (BorderImage) eventValue));
        } else if (eventValue instanceof Font) {
            builder.append(fontToString(property, (Font) eventValue));
        } else if (eventValue instanceof Paint) {
            builder.append(paintToString((Paint) eventValue).toLowerCase(Locale.ROOT));
        } else if (eventValue instanceof Insets) {
            builder.append(insetsValue((Insets) eventValue));
        } else if (eventValue instanceof Effect) {
            builder.append(effectValue((Effect) eventValue));
        } else {
            String str = EditorUtils.valAsStr(eventValue);
            if (str == null) {
                str = "null"; //NOI18N
            } else {
                str = str.replaceAll("\n", " ");//NOI18N
                // Remove memory address if any
                str = str.split("@")[0]; //NOI18N
                str = removeDotZeroPxPercent(str);
            }
            builder.append(str);
        }
        return builder.toString();
    }