public interface TypeRegistry
Modifier and Type | Method and Description |
---|---|
default <T extends PDeclaredDescriptor<T>> |
getDeclaredType(String typeName)
Get a declared type by its qualified type name.
|
<T extends PDeclaredDescriptor<T>> |
getDeclaredType(String typeName,
String programContext)
Get the declared type with the given name and program context.
|
default <E extends PEnumValue<E>> |
getEnumType(String typeName)
These extra casts needs to be there, otherwise we'd get this error:
incompatible types: inference variable T has incompatible upper bounds
net.morimekta.providence.descriptor.PDeclaredDescriptor<net.morimekta.providence.descriptor.PEnumDescriptor>,
net.morimekta.providence.descriptor.PEnumDescriptor
TODO: Figure out a way to fix the generic cast. |
default <M extends PMessage<M,F>,F extends PField> |
getMessageType(String typeName)
These extra casts needs to be there, otherwise we'd get this error:
incompatible types: inference variable T has incompatible upper bounds
net.morimekta.providence.descriptor.PDeclaredDescriptor<net.morimekta.providence.descriptor.PEnumDescriptor>,
net.morimekta.providence.descriptor.PEnumDescriptor
TODO: Figure out a way to fix the generic cast. |
PDescriptorProvider |
getProvider(String typeName,
String programContext,
Map<String,String> annotations)
Given a type name and a package context, fetches the type provider for
the given type.
|
default PService |
getService(String serviceName)
Get a service definition from it's qualified service name.
|
PService |
getService(String serviceName,
String programContext)
Get a service definition from the name and program context.
|
PServiceProvider |
getServiceProvider(String serviceName,
String programContext)
Given a service name and program context, fetches the service provider
for the given service.
|
@Nonnull <T extends PDeclaredDescriptor<T>> T getDeclaredType(@Nonnull String typeName, @Nonnull String programContext)
T
- The described type.typeName
- The type name.programContext
- The program context of the type.@Nonnull default <T extends PDeclaredDescriptor<T>> T getDeclaredType(@Nonnull String typeName)
T
- The described type.typeName
- The type name.@Nonnull default <M extends PMessage<M,F>,F extends PField> PMessageDescriptor<M,F> getMessageType(@Nonnull String typeName)
net.morimekta.providence.descriptor.PDeclaredDescriptor<net.morimekta.providence.descriptor.PEnumDescriptor>,
net.morimekta.providence.descriptor.PEnumDescriptor
TODO: Figure out a way to fix the generic cast.M
- The message type.F
- The message field type.typeName
- The type name.@Nonnull default <E extends PEnumValue<E>> PEnumDescriptor<E> getEnumType(@Nonnull String typeName)
net.morimekta.providence.descriptor.PDeclaredDescriptor<net.morimekta.providence.descriptor.PEnumDescriptor>,
net.morimekta.providence.descriptor.PEnumDescriptor
TODO: Figure out a way to fix the generic cast.E
- The enum value type.typeName
- The type name.@Nonnull PService getService(String serviceName, String programContext)
serviceName
- The service name.programContext
- The program context name to get the service in.@Nonnull default PService getService(String serviceName)
serviceName
- The service name.@Nonnull PDescriptorProvider getProvider(String typeName, String programContext, Map<String,String> annotations)
typeName
- Name of type, without any spaces.programContext
- The program context of the reference.annotations
- Annotations affecting the type.@Nonnull PServiceProvider getServiceProvider(String serviceName, String programContext)
serviceName
- Name of the service.programContext
- The program context of the reference.Copyright © 2015–2018 morimekta.net. All rights reserved.