protected String getCleanFileName(String id) {
        //http://stackoverflow.com/a/35591188/4053176
        return id.replaceAll("[^a-zA-Z0-9.-]", "") + FILE_EXTENSION;
    }
Creates a new program cache associated with the specified context and
devices.
The cached programs are built against the specified device and also
only the binaries linked to that device are stored.
@param context the OpenCL context
@param device the OpenCL device
jme3-core/src/main/java/com/jme3/opencl/ProgramCache.java