org.puremvc.java.interfaces.IModel Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of PureMVC Show documentation
Show all versions of PureMVC Show documentation
PureMVC is a lightweight framework for creating applications
based upon the classic Model-View-Controller design
meta-pattern. This is the specific implementation for the Java
language. It does not support modular programming since it
uses Singletons as Core actors rather than the Multiton used in
the MultiCore Version.
The newest version!
//
// PureMVC Java Standard
//
// Copyright(c) 2019 Saad Shams
// Your reuse is governed by the Creative Commons Attribution 3.0 License
//
package org.puremvc.java.interfaces;
/**
* The interface definition for a PureMVC Model.
*
* In PureMVC, IModel
implementors provide
* access to IProxy
objects by named lookup.
*
* An IModel
assumes these responsibilities:
*
*
* - Maintain a cache of
IProxy
instances
* - Provide methods for registering, retrieving, and removing
IProxy
instances
*
*/
public interface IModel {
/**
* Register an IProxy
instance with the Model
.
*
* @param proxy an object reference to be held by the Model
.
*/
void registerProxy(IProxy proxy);
/**
* Retrieve an IProxy
instance from the Model.
*
* @param proxyName proxy name
* @return the IProxy
instance previously registered with the given proxyName
.
*/
IProxy retrieveProxy(String proxyName);
/**
* Remove an IProxy
instance from the Model.
*
* @param proxyName name of the IProxy
instance to be removed.
* @return the IProxy
that was removed from the Model
*/
IProxy removeProxy(String proxyName);
/**
* Check if a Proxy is registered
*
* @param proxyName proxy name
* @return whether a Proxy is currently registered with the given proxyName
.
*/
boolean hasProxy(String proxyName);
}