class InDegreeRangeFilter extends AbstractFilter implements RangeFilter, NodeFilter {

        private Range range;

        public InDegreeRangeFilter() {
            super(NbBundle.getMessage(InDegreeRangeBuilder.class, "InDegreeRangeBuilder.name"));

            //Add property
            addProperty(Range.class, "range");
        }

        @Override
        public boolean init(Graph graph) {
            return !(graph.getNodeCount() == 0 || !(graph.isDirected()));
        }

        @Override
        public boolean evaluate(Graph graph, Node node) {
            int degree = ((DirectedGraph) graph).getInDegree(node);
            return range.isInRange(degree);
        }

        @Override
        public void finish() {
        }

        @Override
        public Number[] getValues(Graph graph) {<FILL_FUNCTION_BODY>}

        @Override
        public FilterProperty getRangeProperty() {
            return getProperties()[0];
        }

        public Range getRange() {
            return range;
        }

        public void setRange(Range range) {
            this.range = range;
        }
    }

            DirectedGraph dgraph = (DirectedGraph) graph;
            List<Integer> values = new ArrayList<>(dgraph.getNodeCount());
            for (Node n : dgraph.getNodes()) {
                int degree = dgraph.getInDegree(n);
                values.add(degree);
            }
            return values.toArray(new Number[0]);
        
<no_super_class>