void (@NotNull IdeaPluginDescriptor descriptor, @NotNull Consumer<? super String> callback, @NotNull Consumer<? super String> asyncCallback) { checkAccess(); String code = descriptor.getProductCode(); if (myPrepared) { Object value = myPriceTable.get(code); if (value instanceof String) { callback.consume((String)value); } } else { myPriceTable.put(code, asyncCallback); if (!myPreparing) { myPreparing = true; loadPrice(); } } }