private SerializationKind getSerializationKind()

in shared/api/src/main/java/org/apache/sling/ide/serialization/SerializationKindManager.java [76:108]


    private SerializationKind getSerializationKind(String nodeType, NodeTypeRegistry nodeTypeRegistry) {

        if (Repository.NT_FILE.equals(nodeType)) {
            return SerializationKind.FILE;
        }
        
        if (Repository.NT_RESOURCE.equals(nodeType)) {
        	return SerializationKind.FILE;
        }

        if (Repository.NT_FOLDER.equals(nodeType)) {
            return SerializationKind.FOLDER;
        }

        if ("rep:accessControl".equals(nodeType) || "rep:Policy".equals(nodeType) || "cq:Widget".equals(nodeType)
                || "cq:EditConfig".equals(nodeType) || "cq:WorkflowModel".equals(nodeType)
                || "vlt:FullCoverage".equals(nodeType) || "mix:language".equals(nodeType)
                || "sling:OsgiConfig".equals(nodeType)) {
            return SerializationKind.METADATA_FULL;
        }
        String[] parents = nodeTypeRegistry.getNodeType(nodeType).getDeclaredSupertypeNames();
        if (parents == null)
            return null;

        for (String parent : parents) {
            SerializationKind parentSerializationKind = getSerializationKind(parent, nodeTypeRegistry);
            if (parentSerializationKind != null) {
                return parentSerializationKind;
            }
        }

        return null;
    }