code: @Override
      public IBucket read(final long pKey) throws TTIOException {
          // IBucket returnval = null;
          IBucket returnval = mCache.getIfPresent(pKey);
          if (returnval == null) {
  
              final DatabaseEntry valueEntry = new DatabaseEntry();
              final DatabaseEntry keyEntry = new DatabaseEntry();
  
              TupleBinding.getPrimitiveBinding(Long.class).objectToEntry(pKey, keyEntry);
  
              try {
                  final OperationStatus status = mDatabase.get(null, keyEntry, valueEntry, LockMode.DEFAULT);
                  if (status == OperationStatus.SUCCESS) {
                      returnval = mBucketBinding.entryToObject(valueEntry);
                  }
  
              } catch (final DatabaseException exc) {
                  throw new TTIOException(exc);
              }
              mCache.put(pKey, returnval);
  
          }
          return returnval;
      }
docs: {@inheritDoc}