Refine search
@Override protected String getLocalMidToRequest(final ItdTypeDetails itdTypeDetails) { // Determine the governor for this ITD, and whether any metadata is even // hoping to hear about changes to that JavaType and its ITDs final JavaType governor = itdTypeDetails.getName(); final String localMid = domainTypeToServiceMidMap.get(governor); if (localMid != null) { return localMid; } final MemberHoldingTypeDetails memberHoldingTypeDetails = getTypeLocationService().getTypeDetails(governor); if (memberHoldingTypeDetails != null) { for (final JavaType type : memberHoldingTypeDetails.getLayerEntities()) { final String localMidType = domainTypeToServiceMidMap.get(type); if (localMidType != null) { return localMidType; } } } return null; }
private void init(final MemberHoldingTypeDetails existing) { for (final ConstructorMetadata element : existing.getDeclaredConstructors()) { declaredConstructors.add(new ConstructorMetadataBuilder(element)); } for (final FieldMetadata element : existing.getDeclaredFields()) { declaredFields.add(new FieldMetadataBuilder(element)); } for (final MethodMetadata element : existing.getDeclaredMethods()) { declaredMethods.add(new MethodMetadataBuilder(element)); } for (final ClassOrInterfaceTypeDetails element : existing.getDeclaredInnerTypes()) { declaredInnerTypes.add(new ClassOrInterfaceTypeDetailsBuilder(element)); } for (final InitializerMetadata element : existing.getDeclaredInitializers()) { declaredInitializers.add(new InitializerMetadataBuilder(element)); } extendsTypes.addAll(existing.getExtendsTypes()); implementsTypes.addAll(existing.getImplementsTypes()); }
public boolean isRequestingAnnotatedWith(final AnnotationMetadata annotationMetadata, final String requestingMid) { for (final MemberHoldingTypeDetails memberHoldingTypeDetails : details) { if (MemberFindingUtils.getAnnotationOfType(memberHoldingTypeDetails.getAnnotations(), annotationMetadata.getAnnotationType()) != null) { if (memberHoldingTypeDetails.getDeclaredByMetadataId().equals(requestingMid)) { return true; } } } return false; } }
private void doModification(final MemberHoldingTypeDetails type, final CustomData customData) { final MemberHoldingTypeDetails memberHoldingTypeDetails = memberHoldingTypeDetailsMap.get(type.getDeclaredByMetadataId()); if (memberHoldingTypeDetails != null) { if (memberHoldingTypeDetails.getName().equals(type.getName()) && !memberHoldingTypeDetails.getCustomData().keySet().containsAll(customData.keySet())) { final TypeDetailsBuilder typeDetailsBuilder = getTypeDetailsBuilder(memberHoldingTypeDetails); typeDetailsBuilder.getCustomData().append(customData); changed = true; } } }
&& memberHoldingTypes.get(0).getPhysicalTypeCategory() != PhysicalTypeCategory.ITD) { return pushedElements; if (!memberHoldingTypeDetails.getType().equals(classDetails.getType())) { continue; List<MethodMetadata> allDeclaredMethods = memberHoldingTypeDetails.getMethods(); memberHoldingTypeDetails.getDeclaredFields(); memberHoldingTypeDetails.getDeclaredConstructors(); classDetails = getTypeLocationService().getTypeDetails(detailsBuilder.build().getType()); List<AnnotationMetadata> allDeclaredAnnotations = memberHoldingTypeDetails.getAnnotations(); for (AnnotationMetadata annotation : allDeclaredAnnotations) { List<JavaType> allExtendsTypes = memberHoldingTypeDetails.getExtendsTypes(); for (JavaType extendsType : allExtendsTypes) { List<JavaType> allImplementsTypes = memberHoldingTypeDetails.getImplementsTypes(); for (JavaType implementsType : allImplementsTypes) { if (!detailsBuilder.getImplementsTypes().contains(implementsType)) { Set<ImportMetadata> allRegisteredImports = memberHoldingTypeDetails.getImports(); detailsBuilder.addImports(allRegisteredImports);
+ "module where it is. Ex.: `--type model:~.domain.MyClass`. If the module is not " + "specified, it is assumed that the class is in the module which has the focus.") final JavaType javaType) { final String id = typeLocationService.getPhysicalTypeIdentifier(javaType); if (id == null) { return "Cannot locate source for " + javaType.getFullyQualifiedTypeName(); .append(System.getProperty("line.separator")); final ClassOrInterfaceTypeDetails javaTypeDetails = typeLocationService.getTypeDetails(javaType); if (javaTypeDetails == null) { sb.append("Java type details unavailable").append(System.getProperty("line.separator")); for (final MemberHoldingTypeDetails holder : memberDetailsScanner.getMemberDetails( getClass().getName(), javaTypeDetails).getDetails()) { sb.append("Member scan: ").append(holder.getDeclaredByMetadataId()) .append(System.getProperty("line.separator"));
ClassOrInterfaceTypeDetails classDetails = getTypeLocationService().getTypeDetails(klass); Validate .notNull(klass, "ERROR: You must specify a valid class to continue with push-in action"); && memberHoldingTypeDetails.getImplementsTypes().contains(relatedRepositoryCustom)) { detailsBuilder.addImplementsType(relatedRepositoryCustom); pushedElements.add(relatedRepositoryCustom); if (!memberHoldingTypeDetails.getType().equals(classDetails.getType())) { continue; List<MethodMetadata> allDeclaredMethods = memberHoldingTypeDetails.getMethods(); Set<ImportMetadata> allRegisteredImports = memberHoldingTypeDetails.getImports(); detailsBuilder.addImports(allRegisteredImports);
.getTypeDetails(formBackingType); final LogicalPath formBackingTypePath = PhysicalTypeIdentifier .getPath(formBackingTypeDetails.getDeclaredByMetadataId()); final String fieldResourceId = XmlUtils.convertId(resourceId + "." + fieldName.getSymbolName().toLowerCase()); if (typeLocationService.isInProject(method.getReturnType()) && webMetadataService.isRooIdentifier(method .getReturnType(), webMetadataService if (MemberFindingUtils.getAnnotationOfType(mhtd.getAnnotations(), RooJavaType.ROO_WEB_FINDER) != null) {
final ClassOrInterfaceTypeDetails cid = getTypeLocationService().getTypeDetails(type); if (cid != null) { final MemberDetails memberDetails = List<JavaType> extendsTypes = detail.getExtendsTypes(); for (JavaType extendJavaType : extendsTypes) { for (MethodMetadata method : getAllMethods(extendJavaType)) {
persistenceMemberHoldingTypeDetails.getDeclaredByMetadataId(), entityFactoryMetadata); getTypeLocationService().findClassesOrInterfaceDetailsWithAnnotation( RooJavaType.ROO_JPA_ENTITY_FACTORY);
public List<MethodMetadata> getMethods() { final List<MethodMetadata> result = new ArrayList<MethodMetadata>(); for (final MemberHoldingTypeDetails memberHoldingTypeDetails : details) { result.addAll(memberHoldingTypeDetails.getDeclaredMethods()); } return result; }
public List<FieldMetadata> getFields() { final List<FieldMetadata> result = new ArrayList<FieldMetadata>(); for (final MemberHoldingTypeDetails memberHoldingTypeDetails : details) { result.addAll(memberHoldingTypeDetails.getDeclaredFields()); } return result; }
private void updateAttributeCache(final MemberHoldingTypeDetails cid) { Validate.notNull(cid, "Member holding type details required"); if (!typeAnnotationMap.containsKey(cid.getDeclaredByMetadataId())) { typeAnnotationMap.put(cid.getDeclaredByMetadataId(), new HashSet<JavaType>()); if (!typeCustomDataMap.containsKey(cid.getDeclaredByMetadataId())) { typeCustomDataMap.put(cid.getDeclaredByMetadataId(), new HashSet<Object>()); final Set<JavaType> previousAnnotations = typeAnnotationMap.get(cid.getDeclaredByMetadataId()); for (final JavaType previousAnnotation : previousAnnotations) { final Set<String> midSet = annotationToMidMap.get(previousAnnotation); if (midSet != null) { midSet.remove(cid.getDeclaredByMetadataId()); for (final AnnotationMetadata annotationMetadata : cid.getAnnotations()) { if (!annotationToMidMap.containsKey(annotationMetadata.getAnnotationType())) { annotationToMidMap.put(annotationMetadata.getAnnotationType(), new HashSet<String>()); cid.getDeclaredByMetadataId()); final Set<Object> previousCustomDataSet = typeCustomDataMap.get(cid.getDeclaredByMetadataId()); for (final Object previousCustomData : previousCustomDataSet) { final Set<String> midSet = tagToMidMap.get(previousCustomData); if (midSet != null) { midSet.remove(cid.getDeclaredByMetadataId()); for (final Object customData : cid.getCustomData().keySet()) { if (!tagToMidMap.containsKey(customData)) { tagToMidMap.put(customData, new HashSet<String>());
/** * Returns the metadata for the annotation of the given type from within the * given metadata * * @param metadata the metadata to search; can be <code>null</code> * @param annotationType the type of annotation for which to return the * metadata; can be <code>null</code> * @return <code>null</code> if not found * @since 1.2.0 */ public static AnnotationMetadata getAnnotationOfType( final MemberHoldingTypeDetailsMetadataItem<?> metadata, final JavaType annotationType) { if (metadata == null || metadata.getMemberHoldingTypeDetails() == null) { return null; } return getAnnotationOfType(metadata.getMemberHoldingTypeDetails().getAnnotations(), annotationType); }
/** * Assists creating a local metadata identification string (MID) from any * presented {@link MemberHoldingTypeDetails} implementation. This is * achieved by extracting the * {@link IdentifiableJavaStructure#getDeclaredByMetadataId()} and * converting it into a {@link JavaType} and {@link Path}, then calling * {@link #createLocalIdentifier(JavaType, Path)}. * * @param memberHoldingTypeDetails the member holder from which the * declaring type information should be extracted (required) * @return a MID produced by {@link #createLocalIdentifier(JavaType, Path)} * for the extracted Java type in the extract Path (never null) */ protected String getLocalMid(final MemberHoldingTypeDetails memberHoldingTypeDetails) { final JavaType governorType = memberHoldingTypeDetails.getName(); // Extract out the metadata provider class (we need this later to // extract just the Path it is located in) final String providesType = MetadataIdentificationUtils.getMetadataClass(memberHoldingTypeDetails .getDeclaredByMetadataId()); final LogicalPath path = PhysicalTypeIdentifierNamingUtils.getPath(providesType, memberHoldingTypeDetails.getDeclaredByMetadataId()); // Produce the local MID we're going to use to make the request return createLocalIdentifier(governorType, path); }
private TypeDetailsBuilder getTypeDetailsBuilder( final MemberHoldingTypeDetails memberHoldingTypeDetails) { if (typeDetailsBuilderMap.containsKey(memberHoldingTypeDetails.getDeclaredByMetadataId())) { return typeDetailsBuilderMap.get(memberHoldingTypeDetails.getDeclaredByMetadataId()); } final TypeDetailsBuilder typeDetailsBuilder = new TypeDetailsBuilder(memberHoldingTypeDetails); typeDetailsBuilderMap.put(memberHoldingTypeDetails.getDeclaredByMetadataId(), typeDetailsBuilder); return typeDetailsBuilder; }
public List<ConstructorMetadata> getConstructors() { final List<ConstructorMetadata> result = new ArrayList<ConstructorMetadata>(); for (final MemberHoldingTypeDetails memberHoldingTypeDetails : details) { result.addAll(memberHoldingTypeDetails.getDeclaredConstructors()); } return result; }
+ "module where it is. Ex.: `--type model:~.domain.MyClass`. If the module is not " + "specified, it is assumed that the class is in the module which has the focus.") final JavaType javaType) { final String id = typeLocationService.getPhysicalTypeIdentifier(javaType); if (id == null) { return "Cannot locate source for " + javaType.getFullyQualifiedTypeName(); .append(System.getProperty("line.separator")); final ClassOrInterfaceTypeDetails javaTypeDetails = typeLocationService.getTypeDetails(javaType); if (javaTypeDetails == null) { sb.append("Java type details unavailable").append(System.getProperty("line.separator")); for (final MemberHoldingTypeDetails holder : memberDetailsScanner.getMemberDetails( getClass().getName(), javaTypeDetails).getDetails()) { sb.append("Member scan: ").append(holder.getDeclaredByMetadataId()) .append(System.getProperty("line.separator"));
persistenceMemberHoldingTypeDetails.getDeclaredByMetadataId(), entityFactoryMetadata); getTypeLocationService().findClassesOrInterfaceDetailsWithAnnotation( RooJavaType.ROO_JPA_ENTITY_FACTORY);
public List<MethodMetadata> getMethods() { final List<MethodMetadata> result = new ArrayList<MethodMetadata>(); MemberHoldingTypeDetails current = this; while (current != null) { for (final MethodMetadata method : current.getDeclaredMethods()) { result.add(method); } if (current instanceof ClassOrInterfaceTypeDetails) { current = ((ClassOrInterfaceTypeDetails) current).getSuperclass(); } else { current = null; } } return result; }