001/*
002 * (C) Copyright 2006-2007 Nuxeo SAS (http://nuxeo.com/) and contributors.
003 *
004 * All rights reserved. This program and the accompanying materials
005 * are made available under the terms of the GNU Lesser General Public License
006 * (LGPL) version 2.1 which accompanies this distribution, and is available at
007 * http://www.gnu.org/licenses/lgpl.html
008 *
009 * This library is distributed in the hope that it will be useful,
010 * but WITHOUT ANY WARRANTY; without even the implied warranty of
011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
012 * Lesser General Public License for more details.
013 *
014 * Contributors:
015 *     Nuxeo - initial API and implementation
016 *
017 * $Id: JOOoConvertPluginImpl.java 18651 2007-05-13 20:28:53Z sfermigier $
018 */
019
020package org.nuxeo.ecm.platform.picture.web;
021
022import java.io.IOException;
023import java.util.ArrayList;
024import java.util.List;
025import java.util.Map;
026
027import javax.faces.model.SelectItem;
028
029
030/**
031 * Provide Creation Book related actions.
032 *
033 * @author <a href="mailto:ldoguin@nuxeo.com">Laurent Doguin</a>
034 * @deprecated since 6.0. See NXP-15370.
035 */
036@Deprecated
037public interface PictureBookManager {
038
039    /**
040     * Sets the title. This is the title of the PictureBook as defined in the Dublincore schema
041     *
042     * @param title a String holding the title
043     */
044    void setTitle(String title);
045
046    /**
047     * Gets the title. This is the title of the PictureBook as defined in the Dublincore schema.
048     *
049     * @return a String holding the title
050     */
051    String getTitle();
052
053    /**
054     * Gets the views. The views are Map that contains different information about each type of picture you might want.
055     * It has the 3 default following views: Original View, Medium View, used for the slideShow Thumbnail View, used For
056     * the PictureBook.
057     *
058     * @return an ArrayList of Map<String, Object> holding the views
059     */
060    ArrayList<Map<String, Object>> getViews();
061
062    /**
063     * Sets the views. The views are Map that contains different information about each type of picture you might want.
064     * It has the 3 default following views: Original View, Medium View, used for the slideShow Thumbnail View, used For
065     * the PictureBook
066     *
067     * @param views an ArrayList of Map<String, Object> holding the views
068     */
069    void setViews(ArrayList<Map<String, Object>> views);
070
071    /**
072     * Sets the viewtitle. viewtitle is the property title of a view. For example the default title For the Original
073     * view is 'Original'.
074     *
075     * @param viewtitle a String holding the title of a view
076     */
077    void setViewtitle(String viewtitle);
078
079    /**
080     * Gets the viewtitle. viewtitle is the property title of a view. For example the default title For the Original
081     * view is 'Original'
082     *
083     * @return a String holding the title of a view.
084     */
085    String getViewtitle();
086
087    /**
088     * Sets the description. description is a property of a view.
089     *
090     * @param description a String holding the description
091     */
092    void setDescription(String description);
093
094    /**
095     * Gets the description. description is a property of a view.
096     *
097     * @return a String holding the description
098     */
099    String getDescription();
100
101    /**
102     * Sets the tag. tag is a property of a view.
103     *
104     * @param tag a String holding the tag
105     */
106    void setTag(String tag);
107
108    /**
109     * Gets the tag. tag is a property of a view.
110     *
111     * @return a String holding the description
112     */
113    String getTag();
114
115    /**
116     * Sets the maxsize. maxsize is a property of a view. Maximum size of the longest side of a picture. It is used to
117     * create the file of a view.
118     *
119     * @param maxsize an Integer holding the maximum size
120     */
121    void setMaxsize(Integer maxsize);
122
123    /**
124     * Gets the maxsize. maxsize is a property of a view. Maximum size of the longest side of a picture. It is used to
125     * create the file of a view.
126     *
127     * @return an Integer holding the maximum size
128     */
129    Integer getMaxsize();
130
131    /**
132     * Adds the current view to the views ArrayList using viewtitle, description, tag and maxsize.
133     */
134    void addView();
135
136    /**
137     * Creates and saves a Picture Book DocumentModel using views, timeinterval, description and title.
138     */
139    String createPictureBook();
140
141    void reset();
142
143    void initialize();
144
145    String downloadSelectedBook() throws IOException;
146
147    String downloadAll() throws IOException;
148
149    List<SelectItem> getSelectItems();
150
151    void setSelectItems(List<SelectItem> selectItems);
152
153    String[] getSelectedViews();
154
155    void setSelectedViews(String[] selectedViews);
156
157}