package org.societies.css.api.nodeclient; import java.util.List; public interface ICSSNodeClient { /** * * @return List of current device configuration * Information returned could be installed and/or missing * Societies components */ List checkDeviceConfiguration(); /** * * @return List of potential devices not currently * CSS nodes */ List cssNodeDiscovery(); /** * * @return List of CSS information to * query from another user's device currently * unregistered in the CSS. * TODO How is an unregistered device validated as being * a user's device and not another random device ? * */ List respondToCSSNodeDiscovery(); /** * * @return List of CSS information having registered the current * device as a CSS node. */ List registerCSSNode(); /** * * @return boolean * Unregister the device */ boolean unregisterCSSNode(); /** * @return boolean * Change a CSS node device status * TODO Do these status codes exist and/or are they required ? * Are the only two status codes registered and unregistered ? * Hibernation due to battery levels but still availabe for emergencies * may be another status. */ boolean changeCSSNodeStatus(); }