/* * IMutableStore.java * * Created on May 11, 2003, 6:51 PM */ package hep.aida.dev; import hep.aida.IManagedObject; /** * Developer level interface to an IMutableStore. * * @author serbo */ public interface IDevMutableStore extends IMutableStore { /** * Initiates the process of updating content for an IManagedObject. * Can be done synchronously or can just schedule update in some queue. * If validation mechanism is used for updates, servant's "setValid(path)" * method should be called here after successfull date update. * @param path The path to the object which is to be updated. * @param type Type of object (this parameter does not have to be used). * @throws IllegalArgumentException If the path does not exist, or if it is a directory. */ void updateData(String path, String type) throws IllegalArgumentException; /** * Create an IManagedObject that can be later updated. * If object already exist, do not overwrite it, just * return with, maybe, a warning. * * @param name Simple name of an object which is to be created, no directories. * @param type Type of object. * @throws IllegalArgumentException If unknown type. */ IManagedObject createObject(String name, String type) throws IllegalArgumentException; }