All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.scalar.database.io.Value Maven / Gradle / Ivy

Go to download

A library that provides a distributed storage abstraction and client-coordinated distributed transaction manager on the storage.

There is a newer version: 3.13.0
Show newest version
package com.scalar.database.io;

/**
 * An abstraction for storage entry's value
 *
 * @author Hiroyuki Yamada
 */
public interface Value extends Comparable {

  /**
   * Returns the name of the value
   *
   * @return the name of this value
   */
  String getName();

  /**
   * Creates a copy of the value with the specified name
   *
   * @param name name of a {@code Value}
   * @return a {@code Value} which has the same content of this value
   */
  Value copyWith(String name);

  /**
   * Accepts a {@link ValueVisitor} to be able to be traversed
   *
   * @param v a visitor class used for traversing {@code Value}s
   */
  void accept(ValueVisitor v);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy