Sha256: 5a4777fcf3de5429e59403c1c247332e1138caaf4030f7a3bf325b2f53cfdf0c

Contents?: true

Size: 853 Bytes

Versions: 20

Compression:

Stored size: 853 Bytes

Contents

class NamespaceCache {
    static _instance = null;
    namespaceCache = [];

    constructor() {
        if (NamespaceCache._instance === null) {
            NamespaceCache._instance = this;
        }
        return NamespaceCache._instance;
    }

    cacheNamespace(namespaceRegex) {
        this.namespaceCache.push(namespaceRegex);
    }

    isNamespaceCacheEmpty() {
        return this.namespaceCache.length === 0;
    }

    isTypeAllowed(typeToCheck) {
        for (let pattern of this.namespaceCache) {
            if (new RegExp(pattern).test(typeToCheck.constructor.name)) {
                return true;
            }
        }
        return false;
    }

    getCachedNamespaces() {
        return this.namespaceCache;
    }

    clearCache() {
        this.namespaceCache = [];
        return 0;
    }
}

module.exports = NamespaceCache;

Version data entries

20 entries across 15 versions & 1 rubygems

Version Path
javonet-ruby-sdk-2.5.8 lib/javonet-ruby-sdk/Binaries/Nodejs/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.5.7 lib/javonet-ruby-sdk/Binaries/Nodejs/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.5.6 lib/javonet-ruby-sdk/Binaries/Nodejs/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.5.5 lib/javonet-ruby-sdk/Binaries/Nodejs/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.5.4 lib/javonet-ruby-sdk/Binaries/Nodejs/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.5.3 lib/javonet-ruby-sdk/Binaries/Nodejs/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.5.2 lib/javonet-ruby-sdk/Binaries/Nodejs/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.5.1 lib/javonet-ruby-sdk/Binaries/Nodejs/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.5.0 lib/javonet-ruby-sdk/Binaries/Nodejs/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.4.11 lib/javonet-ruby-sdk/Binaries/Nodejs/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.4.10 lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.4.10 lib/javonet-ruby-sdk/Binaries/Nodejs/Linux/X64/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.4.9 lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.4.9 lib/javonet-ruby-sdk/Binaries/Nodejs/Linux/X64/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.4.8 lib/javonet-ruby-sdk/Binaries/Nodejs/Linux/X64/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.4.8 lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.4.7 lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.4.7 lib/javonet-ruby-sdk/Binaries/Nodejs/Linux/X64/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.4.6 lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/namespaceCache/NamespaceCache.js
javonet-ruby-sdk-2.4.6 lib/javonet-ruby-sdk/Binaries/Nodejs/Linux/X64/core/namespaceCache/NamespaceCache.js