本文整理了Java中io.micronaut.core.type.Argument.getAnnotationMetadata()
方法的一些代码示例,展示了Argument.getAnnotationMetadata()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Argument.getAnnotationMetadata()
方法的具体详情如下:
包路径:io.micronaut.core.type.Argument
类名称:Argument
方法名:getAnnotationMetadata
暂无
代码示例来源:origin: micronaut-projects/micronaut-core
@Override
public AnnotationMetadata getAnnotationMetadata() {
return argument.getAnnotationMetadata();
}
}
代码示例来源:origin: micronaut-projects/micronaut-core
@Override
default AnnotationMetadata getAnnotationMetadata() {
return getArgument().getAnnotationMetadata();
}
代码示例来源:origin: micronaut-projects/micronaut-core
private Object resolveValue(ArgumentConversionContext<T> context, ConvertibleValues<?> values, String annotationValue) {
Argument<T> argument = context.getArgument();
if (StringUtils.isEmpty(annotationValue)) {
annotationValue = argument.getName();
}
return values.get(annotationValue, context).orElseGet(() ->
conversionService.convert(argument.getAnnotationMetadata().getValue(Bindable.class, DEFAULT_VALUE_MEMBER, String.class).orElse(null), context).orElse(null)
);
}
代码示例来源:origin: micronaut-projects/micronaut-core
@Override
public <T> Optional<ArgumentBinder<T, HttpRequest<?>>> findArgumentBinder(Argument<T> argument, HttpRequest<?> source) {
Optional<Class<? extends Annotation>> opt = argument.getAnnotationMetadata().getAnnotationTypeByStereotype(Bindable.class);
if (opt.isPresent()) {
Class<? extends Annotation> annotationType = opt.get();
RequestArgumentBinder<T> binder = findBinder(argument, annotationType);
if (binder == null) {
binder = byAnnotation.get(annotationType);
}
if (binder != null) {
return Optional.of(binder);
}
} else {
RequestArgumentBinder<T> binder = byType.get(argument.typeHashCode());
if (binder != null) {
return Optional.of(binder);
} else {
binder = byType.get(Argument.of(argument.getType()).typeHashCode());
if (binder != null) {
return Optional.of(binder);
}
}
}
return Optional.of(new ParameterAnnotationBinder<>(conversionService));
}
代码示例来源:origin: micronaut-projects/micronaut-core
if (argument.getAnnotationMetadata().hasAnnotation(Nullable.class)) {
boundArguments[i] = null;
} else {
代码示例来源:origin: micronaut-projects/micronaut-core
HttpMethod httpMethod = source.getMethod();
AnnotationMetadata annotationMetadata = argument.getAnnotationMetadata();
boolean hasAnnotation = annotationMetadata.hasAnnotation(PathVariable.class);
String parameterName = annotationMetadata.getValue(PathVariable.class, String.class).orElse(argument.getName());
代码示例来源:origin: micronaut-projects/micronaut-core
if (argument.getAnnotationMetadata().hasAnnotation(Nullable.class)) {
boundArguments[i] = null;
} else {
代码示例来源:origin: micronaut-projects/micronaut-core
);
Argument argument = segment.getArgument();
AnnotationValue<Client> annotation = argument.getAnnotationMetadata().findAnnotation(Client.class).orElse(null);
if (annotation == null) {
throw new DependencyInjectionException(resolutionContext, argument, "ClientScope called for injection point that is not annotated with @Client");
代码示例来源:origin: micronaut-projects/micronaut-core
boolean permitsRequestBody = HttpMethod.permitsRequestBody(httpMethod);
AnnotationMetadata annotationMetadata = argument.getAnnotationMetadata();
boolean hasAnnotation = annotationMetadata.hasAnnotation(QueryValue.class);
String parameterName = annotationMetadata.getValue(QueryValue.class, String.class).orElse(argument.getName());
代码示例来源:origin: micronaut-projects/micronaut-core
for (Argument argument : arguments) {
String argumentName = argument.getName();
AnnotationMetadata annotationMetadata = argument.getAnnotationMetadata();
MutableArgumentValue<?> value = parameters.get(argumentName);
Object definedValue = value.getValue();
final Object v = paramMap.get(argumentName);
if (v != null) {
paramMap.put(argumentName, conversionService.convert(v, ConversionContext.of(String.class).with(argument.getAnnotationMetadata())));
definedValue = argument.getAnnotationMetadata().getValue(Bindable.class, "defaultValue", String.class).orElse(null);
代码示例来源:origin: io.micronaut/management
/**
* @param argument An {@link Argument}
* @return Whether the argument is a path parameter
*/
protected boolean isPathParameter(Argument argument) {
AnnotationMetadata annotationMetadata = argument.getAnnotationMetadata();
return annotationMetadata.hasDeclaredAnnotation(Selector.class);
}
}
代码示例来源:origin: io.micronaut/micronaut-management
/**
* @param argument An {@link Argument}
* @return Whether the argument is a path parameter
*/
protected boolean isPathParameter(Argument argument) {
AnnotationMetadata annotationMetadata = argument.getAnnotationMetadata();
return annotationMetadata.hasDeclaredAnnotation(Selector.class);
}
}
代码示例来源:origin: io.micronaut/micronaut-inject
private Argument[] resolveRequiredArguments() {
return Arrays.stream(getConstructor().getArguments())
.filter(arg -> {
Optional<Class<? extends Annotation>> qualifierType = arg.getAnnotationMetadata().getAnnotationTypeByStereotype(Qualifier.class);
return qualifierType.isPresent() && qualifierType.get() == Parameter.class;
})
.toArray(Argument[]::new);
}
}
代码示例来源:origin: io.micronaut/inject
private Argument[] resolveRequiredArguments() {
return Arrays.stream(getConstructor().getArguments())
.filter(arg -> {
Optional<Class<? extends Annotation>> qualifierType = arg.getAnnotationMetadata().getAnnotationTypeByStereotype(Qualifier.class);
return qualifierType.isPresent() && qualifierType.get() == Parameter.class;
})
.toArray(Argument[]::new);
}
}
代码示例来源:origin: io.micronaut/router
@SuppressWarnings("unchecked")
@Override
public Optional<Argument<?>> getBodyArgument() {
Argument<?> arg = abstractRoute.bodyArgument;
if (arg != null) {
return Optional.of(arg);
}
String bodyArgument = abstractRoute.bodyArgumentName;
if (bodyArgument != null) {
return Optional.ofNullable(requiredInputs.get(bodyArgument));
} else {
for (Argument argument : getArguments()) {
if (argument.getAnnotationMetadata().hasAnnotation(Body.class)) {
return Optional.of(argument);
}
}
}
return Optional.empty();
}
代码示例来源:origin: io.micronaut/router
private String resolveInputName(Argument requiredArgument) {
String inputName = requiredArgument.getAnnotationMetadata().getValue(Bindable.class, String.class).orElse(null);
if (StringUtils.isEmpty(inputName)) {
inputName = requiredArgument.getName();
}
return inputName;
}
}
代码示例来源:origin: io.micronaut/micronaut-http
@Override
public <T> Optional<ArgumentBinder<T, HttpRequest<?>>> findArgumentBinder(Argument<T> argument, HttpRequest<?> source) {
Optional<Class<? extends Annotation>> opt = argument.getAnnotationMetadata().getAnnotationTypeByStereotype(Bindable.class);
if (opt.isPresent()) {
Class<? extends Annotation> annotationType = opt.get();
RequestArgumentBinder<T> binder = findBinder(argument, annotationType);
if (binder == null) {
binder = byAnnotation.get(annotationType);
}
if (binder != null) {
return Optional.of(binder);
}
} else {
RequestArgumentBinder<T> binder = byType.get(argument.typeHashCode());
if (binder != null) {
return Optional.of(binder);
} else {
binder = byType.get(Argument.of(argument.getType()).typeHashCode());
if (binder != null) {
return Optional.of(binder);
}
}
}
return Optional.of(new ParameterAnnotationBinder<>(conversionService));
}
代码示例来源:origin: io.micronaut/inject
private Qualifier resolveQualifier(BeanResolutionContext resolutionContext, Argument argument) {
Qualifier qualifier = null;
AnnotationMetadata annotationMetadata = argument.getAnnotationMetadata();
Optional<Class<? extends Annotation>> qualifierType = annotationMetadata.getAnnotationTypeByStereotype(javax.inject.Qualifier.class);
if (qualifierType.isPresent()) {
qualifier = Qualifiers.byAnnotation(
annotationMetadata,
qualifierType.get()
);
}
if (qualifier == null) {
Class<?>[] byType = annotationMetadata.hasDeclaredAnnotation(Type.class) ? annotationMetadata.getValue(Type.class, Class[].class).orElse(null) : null;
if (byType != null) {
qualifier = Qualifiers.byType(byType);
} else {
Optional<Qualifier> optional = resolutionContext.get(javax.inject.Qualifier.class.getName(), Map.class)
.map(map -> (Qualifier) map.get(argument));
qualifier = optional.orElse(null);
if (qualifier == null && isIterable() && argument.isAnnotationPresent(Parameter.class)) {
qualifier = optional.orElseGet(() -> {
final Optional<String> n = resolutionContext.get(Named.class.getName(), String.class);
return n.map(Qualifiers::byName).orElse(null);
});
}
}
}
return qualifier;
}
代码示例来源:origin: io.micronaut/micronaut-inject
private String resolvePropertyValueName(
BeanResolutionContext resolutionContext,
AnnotationMetadata annotationMetadata,
Argument argument,
String valueAnnStr) {
String valString;
if (valueAnnStr != null) {
valString = valueAnnStr;
} else {
valString = annotationMetadata.getValue(Property.class, "name", String.class)
.orElseGet(() ->
argument.getAnnotationMetadata().getValue(Property.class, "name", String.class)
.orElseThrow(() ->
new DependencyInjectionException(
resolutionContext,
argument,
"Value resolution attempted but @Value annotation is missing"
)
)
);
valString = substituteWildCards(resolutionContext, valString);
}
return valString;
}
代码示例来源:origin: io.micronaut/inject
private String resolvePropertyValueName(
BeanResolutionContext resolutionContext,
AnnotationMetadata annotationMetadata,
Argument argument,
String valueAnnStr) {
String valString;
if (valueAnnStr != null) {
valString = valueAnnStr;
} else {
valString = annotationMetadata.getValue(Property.class, "name", String.class)
.orElseGet(() ->
argument.getAnnotationMetadata().getValue(Property.class, "name", String.class)
.orElseThrow(() ->
new DependencyInjectionException(
resolutionContext,
argument,
"Value resolution attempted but @Value annotation is missing"
)
)
);
valString = substituteWildCards(resolutionContext, valString);
}
return valString;
}
内容来源于网络,如有侵权,请联系作者删除!