Code review comment: can we replace the string using `org.ballerinalang.model.elements.AttachPoint` value ?

Code under review:
public BLangNode transform(AnnotationDeclarationNode annotationDeclarationNode) {
        BLangAnnotation annotationDecl = (BLangAnnotation) TreeBuilder.createAnnotationNode();
        DiagnosticPos pos = getPosition(annotationDeclarationNode);
        annotationDecl.pos = pos;
        annotationDecl.name = createIdentifier(pos, annotationDeclarationNode.annotationTag().text());

        if (annotationDeclarationNode.visibilityQualifier() != null) {
            annotationDecl.addFlag(Flag.PUBLIC);
        }

        if (annotationDeclarationNode.constKeyword() != null) {
            annotationDecl.addFlag(Flag.CONSTANT);
        }

        annotationDecl.annAttachments = applyAll(annotationDeclarationNode.metadata().annotations());

        annotationDeclarationNode.metadata().documentationString().ifPresent(docString-> {
            annotationDecl.markdownDocumentationAttachment = createMarkdownDocumentationAttachment(docString);
        });

        Node typedesc = annotationDeclarationNode.typeDescriptor();
        if (typedesc != null) {
            annotationDecl.typeNode = createTypeNode(typedesc);
        }

        SeparatedNodeList<Node> paramList = annotationDeclarationNode.attachPoints();

        for (Node child : paramList) {
            AnnotationAttachPointNode attachPoint = (AnnotationAttachPointNode) child;
            boolean source = attachPoint.sourceKeyword() != null;
            AttachPoint bLAttachPoint;
            AttachPoint.Point firstIndent = AttachPoint.fromString(attachPoint.firstIdent().text().toLowerCase());
            switch (firstIndent) {
                case OBJECT:
                    AttachPoint.Point secondIdent =
                            AttachPoint.fromString(attachPoint.firstIdent().text().toLowerCase());
                    switch (secondIdent) {
                        case FUNCTION:
                            bLAttachPoint = AttachPoint.getAttachmentPoint("objectfunction", source);
                            break;
                        case FIELD:
                            bLAttachPoint = AttachPoint.getAttachmentPoint("objectfield", source);
                            break;
                        default:
                            bLAttachPoint = AttachPoint.getAttachmentPoint("objecttype", source);
                    }
                    break;
                case RESOURCE:
                    bLAttachPoint = AttachPoint.getAttachmentPoint("resourcefunction", source);
                    break;
                case RECORD_FIELD:
                    bLAttachPoint = AttachPoint.getAttachmentPoint("recordfield", source);
                    break;
                default:
                    bLAttachPoint = AttachPoint.getAttachmentPoint(firstIndent.getValue(), source);
            }
            annotationDecl.addAttachPoint(bLAttachPoint);
        }

        return annotationDecl;
    }

Line commented on: bLAttachPoint = AttachPoint.getAttachmentPoint("objectfunction", source);

Revised code:
public BLangNode transform(AnnotationDeclarationNode annotationDeclarationNode) {
        BLangAnnotation annotationDecl = (BLangAnnotation) TreeBuilder.createAnnotationNode();
        DiagnosticPos pos = getPosition(annotationDeclarationNode);
        annotationDecl.pos = pos;
        annotationDecl.name = createIdentifier(annotationDeclarationNode.annotationTag());

        if (annotationDeclarationNode.visibilityQualifier() != null) {
            annotationDecl.addFlag(Flag.PUBLIC);
        }

        if (annotationDeclarationNode.constKeyword() != null) {
            annotationDecl.addFlag(Flag.CONSTANT);
        }

        annotationDecl.annAttachments = applyAll(annotationDeclarationNode.metadata().annotations());

        annotationDeclarationNode.metadata().documentationString().ifPresent(docString-> {
            annotationDecl.markdownDocumentationAttachment = createMarkdownDocumentationAttachment(docString);
        });

        Node typedesc = annotationDeclarationNode.typeDescriptor();
        if (typedesc != null) {
            annotationDecl.typeNode = createTypeNode(typedesc);
        }

        SeparatedNodeList<Node> paramList = annotationDeclarationNode.attachPoints();

        for (Node child : paramList) {
            AnnotationAttachPointNode attachPoint = (AnnotationAttachPointNode) child;
            boolean source = attachPoint.sourceKeyword() != null;
            AttachPoint bLAttachPoint;
            Token firstIndent =  attachPoint.firstIdent();

            switch (firstIndent.kind()) {
                case OBJECT_KEYWORD:
                    Token secondIndent = attachPoint.secondIdent();
                    switch (secondIndent.kind()) {
                        case FUNCTION_KEYWORD:
                            bLAttachPoint =
                                    AttachPoint.getAttachmentPoint(AttachPoint.Point.OBJECT_METHOD.getValue(), source);
                            break;
                        case FIELD_KEYWORD:
                            bLAttachPoint =
                                    AttachPoint.getAttachmentPoint(AttachPoint.Point.OBJECT_FIELD.getValue(), source);
                            break;
                        default:
                            bLAttachPoint =
                                    AttachPoint.getAttachmentPoint(AttachPoint.Point.OBJECT.getValue(), source);
                    }
                    break;
                case RESOURCE_KEYWORD:
                    bLAttachPoint = AttachPoint.getAttachmentPoint(AttachPoint.Point.RESOURCE.getValue(), source);
                    break;
                case RECORD_KEYWORD:
                    bLAttachPoint = AttachPoint.getAttachmentPoint(AttachPoint.Point.RECORD_FIELD.getValue(), source);
                    break;
                default:
                    bLAttachPoint = AttachPoint.getAttachmentPoint(firstIndent.text(), source);
            }
            annotationDecl.addAttachPoint(bLAttachPoint);
        }

        return annotationDecl;
    }