001: /*
002: * $Header: /export/home/cvsroot/MyPersonalizerRepository/MyPersonalizer/Subsystems/Portal/Sources/es/udc/mypersonalizer/portal/model/types/personalization/ChangeServiceButtonStateEvent.java,v 1.1.1.1 2004/03/25 12:08:40 fbellas Exp $
003: * $Revision: 1.1.1.1 $
004: * $Date: 2004/03/25 12:08:40 $
005: *
006: * =============================================================================
007: *
008: * Copyright (c) 2003, The MyPersonalizer Development Group
009: * (http://www.tic.udc.es/~fbellas/mypersonalizer/index.html) at
010: * University Of A Coruna
011: * All rights reserved.
012: *
013: * Redistribution and use in source and binary forms, with or without
014: * modification, are permitted provided that the following conditions are met:
015: *
016: * - Redistributions of source code must retain the above copyright notice,
017: * this list of conditions and the following disclaimer.
018: *
019: * - Redistributions in binary form must reproduce the above copyright notice,
020: * this list of conditions and the following disclaimer in the documentation
021: * and/or other materials provided with the distribution.
022: *
023: * - Neither the name of the University Of A Coruna nor the names of its
024: * contributors may be used to endorse or promote products derived from
025: * this software without specific prior written permission.
026: *
027: * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
028: * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
029: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
030: * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
031: * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
032: * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
033: * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
034: * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
035: * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
036: * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
037: * POSSIBILITY OF SUCH DAMAGE.
038: *
039: */
040:
041: package es.udc.mypersonalizer.portal.model.types.personalization;
042:
043: import es.udc.mypersonalizer.portal.model.permissions.UserCredentials;
044: import es.udc.mypersonalizer.portal.model.types.PortalEvent;
045:
046: /**
047: * This class is used as an event for
048: * {@link es.udc.mypersonalizer.portal.model.actions.personalization.ChangeServiceButtonStateAction}.
049: * Its purpose is to identify the button to be
050: * changed and to provide the new value for its state. It contains, besides
051: * the user's credentials:
052: *
053: * <ul>
054: * <li><tt>serviceButtonStateIdentifier</tt>: The identifier for the
055: * property which stores the state information for the button.</li>
056: * <li><tt>buttonName</tt>: Name of the button to be changed (the property
057: * stores the info for all the buttons of a service).</li>
058: * <li><tt>buttonState</tt>: New state (Integer) to be applied to the
059: * selected button.</li>
060: * <li><tt>serviceIdentifier</tt>: This identifies the service on which the
061: * change is being made, so that permissions for this user to perform
062: * the change are checked.</li>
063: * </ul>
064: *
065: * @author Daniel Fernandez
066: * @since 1.0
067: */
068: public class ChangeServiceButtonStateEvent extends PortalEvent {
069:
070: /**
071: * The service button state identifier.
072: */
073: private Long serviceButtonStateIdentifier;
074:
075: /**
076: * The button name.
077: */
078: private String buttonName;
079:
080: /**
081: * The new state for the button.
082: */
083: private Integer buttonState;
084:
085: /**
086: * The identifier for the service on which the change is being made.
087: */
088: private String serviceIdentifier;
089:
090: /**
091: * Creates a new instance of this event.
092: *
093: * @param userCredentials the user's credentials.
094: * @param serviceButtonStateIdentifier the service button state identifier.
095: * @param buttonName the button name.
096: * @param buttonState the new state for the button.
097: * @param serviceIdentifier the identifier of the service on which the
098: * change is being made.
099: */
100: public ChangeServiceButtonStateEvent(
101: UserCredentials userCredentials,
102: Long serviceButtonStateIdentifier, String buttonName,
103: Integer buttonState, String serviceIdentifier) {
104: super (userCredentials);
105: this .serviceButtonStateIdentifier = serviceButtonStateIdentifier;
106: this .buttonName = buttonName;
107: this .buttonState = buttonState;
108: this .serviceIdentifier = serviceIdentifier;
109: }
110:
111: /**
112: * Returns the service button state identifier.
113: *
114: * @return the service button state identifier.
115: */
116: public Long getServiceButtonStateIdentifier() {
117: return serviceButtonStateIdentifier;
118: }
119:
120: /**
121: * Returns the name of the button which state is to be modified.
122: *
123: * @return the name of the button.
124: */
125: public String getButtonName() {
126: return buttonName;
127: }
128:
129: /**
130: * The new state that will be established for the button.
131: *
132: * @return an Integer being the new state.
133: */
134: public Integer getButtonState() {
135: return buttonState;
136: }
137:
138: /**
139: * Returns the identifier of the service on which buttons the change
140: * is being made.
141: *
142: * @return the service identifier.
143: */
144: public String getServiceIdentifier() {
145: return serviceIdentifier;
146: }
147:
148: }
|