@Override
    public void fill(Parameter parameter, Type type, Annotation[] annotations)
    {
        for (Annotation annotation : annotations)
        {
            if (annotation instanceof Default)
            {
                Class value = ((Default)annotation).value();
                if (value == DefaultValue.class)
                {
                    value = parameter.getProperty(Properties.TYPE);
                }
                parameter.offer(Properties.DEFAULT_PROVIDER, value);
                return;
            }
        }
    }