KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > killingar > forum > actions > strip > View


1 /* Copyright 2000-2005 Anders Hovmöller
2  *
3  * The person or persons who have associated their work with
4  * this document (the "Dedicator") hereby dedicate the entire
5  * copyright in the work of authorship identified below (the
6  * "Work") to the public domain.
7  *
8  * Dedicator makes this dedication for the benefit of the
9  * public at large and to the detriment of Dedicator's heirs
10  * and successors. Dedicator intends this dedication to be an
11  * overt act of relinquishment in perpetuity of all present
12  * and future rights under copyright law, whether vested or
13  * contingent, in the Work. Dedicator understands that such
14  * relinquishment of all rights includes the relinquishment of
15  * all rights to enforce (by lawsuit or otherwise) those
16  * copyrights in the Work.
17  *
18  * Dedicator recognizes that, once placed in the public
19  * domain, the Work may be freely reproduced, distributed,
20  * transmitted, used, modified, built upon, or otherwise
21  * exploited by anyone for any purpose, commercial or non-
22  * commercial, and in any way, including by methods that have
23  * not yet been invented or conceived.
24  */

25
26 /**
27  *
28  */

29 package net.killingar.forum.actions.strip;
30
31 import net.killingar.forum.internal.Comic;
32
33 public class View extends net.killingar.forum.actions.comic.ActionComicsSupport
34 {
35     // Private --------------------------------------------------------
36

37     // Attributes -----------------------------------------------------
38
net.killingar.forum.internal.Strip strip;
39     Comic comic;
40     boolean current;
41     long position;
42     long numberOfStrips;
43     String JavaDoc url;
44     boolean setPosition;
45
46     // Methods --------------------------------------------------------
47

48     // Types ----------------------------------------------------------
49

50     // Setters --------------------------------------------------------
51
public void setStripID(long stripID)
52     {
53         try
54         {
55             strip = comicmgr.getStrip(stripID);
56             comic = comicmgr.getComic(strip.getParentID());
57         }
58         catch (Exception JavaDoc e)
59         {
60             strip = null;
61         }
62     }
63
64     public void setSetPosition(boolean setPosition) { this.setPosition = setPosition; }
65
66     // Getters --------------------------------------------------------
67
public net.killingar.forum.internal.Strip getStrip() { return strip; }
68     public Comic getComic() { return comic; }
69     public boolean getCurrent() { return current; }
70     public long getPosition() { return position; }
71     public long getNumberOfStrips() { return numberOfStrips; }
72     public String JavaDoc getUrl() { return url; }
73
74   // Implementation -------------------------------------------------
75
protected String JavaDoc doExecute()
76     {
77         if (strip == null)
78         {
79             addErrorMessage("strip not found");
80             return ERROR;
81         }
82
83         try
84         {
85             if (comicmgr.getPosition(manager.getUserID(), strip.parentID) == strip.prevID || setPosition)
86                 comicmgr.setPosition(manager.getUserID(), strip.parentID, strip.getId());
87
88             position = comicmgr.getStripPosition(strip.ID);
89             numberOfStrips = comicmgr.getNumberOfStrips(strip.parentID);
90             current = comicmgr.getPosition(manager.getUserID(), strip.parentID) == strip.ID;
91             url = (optionmgr.get("disable cached comics") != null || strip.localURL == null)? strip.URL: strip.localURL;
92         }
93         catch (Exception JavaDoc e)
94         {
95             e.printStackTrace();
96             addErrorMessage("executing "+getClass().toString()+" action failed, exception thrown: "+e.toString());
97             return ERROR;
98         }
99
100         return SUCCESS;
101     }
102 }
103
Popular Tags