001/*
002 *  Copyright 2022 Anyware Services
003 *
004 *  Licensed under the Apache License, Version 2.0 (the "License");
005 *  you may not use this file except in compliance with the License.
006 *  You may obtain a copy of the License at
007 *
008 *      http://www.apache.org/licenses/LICENSE-2.0
009 *
010 *  Unless required by applicable law or agreed to in writing, software
011 *  distributed under the License is distributed on an "AS IS" BASIS,
012 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 *  See the License for the specific language governing permissions and
014 *  limitations under the License.
015 */
016package org.ametys.cms.workflow.history;
017
018import java.util.Optional;
019
020import org.ametys.runtime.i18n.I18nizableText;
021
022/**
023 * Object representing a description step
024 */
025public class DescriptionStep 
026{
027    private I18nizableText _description;
028    private Optional<String> _smallIcon;
029    private Optional<String> _mediumIcon;
030    private Optional<String> _largeIcon;
031    private String _status;
032    
033    /**
034     * The constructor for a workflow action
035     */
036    public DescriptionStep()
037    {
038        _smallIcon = Optional.empty();
039        _mediumIcon = Optional.empty();
040        _largeIcon = Optional.empty();
041    }
042    
043    /**
044     * Get the description of the step
045     * @return the description
046     */
047    public I18nizableText getDescription()
048    {
049        return this._description;
050    }
051    
052    /**
053     * Set the description of the step
054     * @param description the description
055     */
056    public void setDescription(I18nizableText description)
057    {
058        this._description = description;
059    }
060    
061    /**
062     * Get the small icon of the step
063     * @return the small icon of the step
064     */
065    public Optional<String> getSmallIcon()
066    {
067        return this._smallIcon;
068    }
069    
070    /**
071     * Set the small icon of the step
072     * @param smallIcon the small icon of the step. Can be null.
073     */
074    public void setSmallIcon(String smallIcon)
075    {
076        this._smallIcon = Optional.ofNullable(smallIcon);
077    }
078    
079    /**
080     * Get the medium icon of the step
081     * @return the medium icon of the step
082     */
083    public Optional<String> getMediumIcon()
084    {
085        return this._mediumIcon;
086    }
087    
088    /**
089     * Set the medium icon of the step
090     * @param mediumIcon the medium icon of the step. Can be null.
091     */
092    public void setMediumIcon(String mediumIcon)
093    {
094        this._mediumIcon = Optional.ofNullable(mediumIcon);
095    }
096    
097    /**
098     * Get the large icon of the step
099     * @return the large icon of the step
100     */
101    public Optional<String> getLargeIcon()
102    {
103        return this._largeIcon;
104    }
105    
106    /**
107     * Set the large icon of the step
108     * @param largeIcon the large icon of the step. Can be null.
109     */
110    public void setLargeIcon(String largeIcon)
111    {
112        this._largeIcon = Optional.ofNullable(largeIcon);
113    }
114
115    /**
116     * Get the step status
117     * @return the step status
118     */
119    public String getStatus()
120    {
121        return this._status;
122    }
123    
124    /**
125     * Set the step status
126     * @param status the status
127     */
128    public void setStatus(String status)
129    {
130        this._status = status;
131    }
132    
133}