async function getNeptuneSchema()

in src/NeptuneSchema.js [418:444]


async function getNeptuneSchema() {
    
    try {
        await getAWSCredentials();
    } catch (error) {
        loggerError('There are no AWS credentials configured. Getting the schema from an Amazon Neptune database with IAM authentication works only with AWS credentials.', error);
    }

    if (await loadSchemaViaSummary()) {
        loggerInfo("Got nodes and edges via Neptune Summary API.", {toConsole: true});
    } else {
        loggerInfo("Getting nodes via queries.", {toConsole: true});
        await getNodesNames();
        loggerInfo("Getting edges via queries.", {toConsole: true});
        await getEdgesNames();
    }
                
    await getNodesProperties();
    
    await getEdgesProperties();
    
    await getEdgesDirections();
    
    await getEdgesDirectionsCardinality();

    return JSON.stringify(schema, null, 2);
}