Gérer la valeur null à l'aide de Goyave Cartographe/CacheBuilder

J'essaie de faire un cache à l'aide de Cartographe/CacheBuilder mais je ne comprends pas comment faire pour gérer correctement les valeurs null.

 ConcurrentMap<Key, Graph> graphs = new MapMaker()
       .concurrencyLevel(4)
       .weakKeys()
       .maximumSize(10000)
       .expireAfterWrite(10, TimeUnit.MINUTES)
       .makeComputingMap(
           new Function<Key, Graph>() {
             public Graph apply(Key key) {
               return createExpensiveGraph(key);
             }
           });

Si la méthode createExpensiveGraph renvoie une valeur nulle, alors une exception NullpointerException est levée.
Je ne comprends pas pourquoi le ComputingConcurrentHashMap jette un NPE au lieu de simplement retourner une valeur null.

Comment bien gérer cela ? Il suffit de prendre la NPE et retourner la valeur null à la place ?
Ai-je raté quelque chose ?