1   /**
2    * Copyright (c) 2000-2007 Liferay, Inc. All rights reserved.
3    *
4    * Permission is hereby granted, free of charge, to any person obtaining a copy
5    * of this software and associated documentation files (the "Software"), to deal
6    * in the Software without restriction, including without limitation the rights
7    * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8    * copies of the Software, and to permit persons to whom the Software is
9    * furnished to do so, subject to the following conditions:
10   *
11   * The above copyright notice and this permission notice shall be included in
12   * all copies or substantial portions of the Software.
13   *
14   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20   * SOFTWARE.
21   */
22  
23  package com.liferay.portlet.stocks.model;
24  
25  import java.io.Serializable;
26  
27  /**
28   * <a href="Stocks.java.html"><b><i>View Source</i></b></a>
29   *
30   * @author Brian Wing Shun Chan
31   *
32   */
33  public class Stocks implements Serializable {
34  
35      public Stocks(String symbol, double lastTrade, double change,
36                    double open, double dayHigh, double dayLow,
37                    long volume) {
38          _symbol = symbol;
39          _lastTrade = lastTrade;
40          _change = change;
41          _open = open;
42          _dayHigh = dayHigh;
43          _dayLow = dayLow;
44          _volume = volume;
45      }
46  
47      public String getSymbol() {
48          return _symbol;
49      }
50  
51      public double getLastTrade() {
52          return _lastTrade;
53      }
54  
55      public void setLastTrade(double lastTrade) {
56          _lastTrade = lastTrade;
57      }
58  
59      public boolean isLastTradeAvailable() {
60          return _lastTradeAvailable;
61      }
62  
63      public void setLastTradeAvailable(boolean lastTradeAvailable) {
64          _lastTradeAvailable = lastTradeAvailable;
65      }
66  
67      public double getChange() {
68          return _change;
69      }
70  
71      public void setChange(double change) {
72          _change = change;
73      }
74  
75      public boolean isChangeAvailable() {
76          return _changeAvailable;
77      }
78  
79      public void setChangeAvailable(boolean changeAvailable) {
80          _changeAvailable = changeAvailable;
81      }
82  
83      public double getPreviousClose() {
84          return _lastTrade - _change;
85      }
86  
87      public boolean isPreviousCloseAvailable() {
88          if (isLastTradeAvailable() && isChangeAvailable()) {
89              return true;
90          }
91          else {
92              return false;
93          }
94      }
95  
96      public double getOpen() {
97          return _open;
98      }
99  
100     public void setOpen(double open) {
101         _open = open;
102     }
103 
104     public boolean isOpenAvailable() {
105         return _openAvailable;
106     }
107 
108     public void setOpenAvailable(boolean openAvailable) {
109         _openAvailable = openAvailable;
110     }
111 
112     public double getDayHigh() {
113         return _dayHigh;
114     }
115 
116     public void setDayHigh(double dayHigh) {
117         _dayHigh = dayHigh;
118     }
119 
120     public boolean isDayHighAvailable() {
121         return _dayHighAvailable;
122     }
123 
124     public void setDayHighAvailable(boolean dayHighAvailable) {
125         _dayHighAvailable = dayHighAvailable;
126     }
127 
128     public double getDayLow() {
129         return _dayLow;
130     }
131 
132     public void setDayLow(double dayLow) {
133         _dayLow = dayLow;
134     }
135 
136     public boolean isDayLowAvailable() {
137         return _dayLowAvailable;
138     }
139 
140     public void setDayLowAvailable(boolean dayLowAvailable) {
141         _dayLowAvailable = dayLowAvailable;
142     }
143 
144     public long getVolume() {
145         return _volume;
146     }
147 
148     public void setVolume(long volume) {
149         _volume = volume;
150     }
151 
152     public boolean isVolumeAvailable() {
153         return _volumeAvailable;
154     }
155 
156     public void setVolumeAvailable(boolean volumeAvailable) {
157         _volumeAvailable = volumeAvailable;
158     }
159 
160     public boolean isValid() {
161         if (!_changeAvailable && !_openAvailable && !_dayHighAvailable &&
162             !_dayLowAvailable && !_volumeAvailable) {
163 
164             return false;
165         }
166         else {
167             return true;
168         }
169     }
170 
171     private String _symbol;
172     private double _lastTrade;
173     private boolean _lastTradeAvailable = true;
174     private double _change;
175     private boolean _changeAvailable = true;
176     private double _open;
177     private boolean _openAvailable = true;
178     private double _dayHigh;
179     private boolean _dayHighAvailable = true;
180     private double _dayLow;
181     private boolean _dayLowAvailable = true;
182     private long _volume;
183     private boolean _volumeAvailable = true;
184 
185 }