1   /**
2    * Copyright (c) 2000-2008 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.expando.service.impl;
24  
25  import com.liferay.portal.PortalException;
26  import com.liferay.portal.SystemException;
27  import com.liferay.portal.util.PortalUtil;
28  import com.liferay.portlet.expando.model.ExpandoColumn;
29  import com.liferay.portlet.expando.model.ExpandoRow;
30  import com.liferay.portlet.expando.model.ExpandoTable;
31  import com.liferay.portlet.expando.model.ExpandoTableConstants;
32  import com.liferay.portlet.expando.model.ExpandoValue;
33  import com.liferay.portlet.expando.model.impl.ExpandoValueImpl;
34  import com.liferay.portlet.expando.service.base.ExpandoValueLocalServiceBaseImpl;
35  
36  import java.util.Date;
37  import java.util.List;
38  
39  /**
40   * <a href="ExpandoValueLocalServiceImpl.java.html"><b><i>View Source</i></b>
41   * </a>
42   *
43   * @author Raymond Augé
44   * @author Brian Wing Shun Chan
45   *
46   */
47  public class ExpandoValueLocalServiceImpl
48      extends ExpandoValueLocalServiceBaseImpl {
49  
50      public ExpandoValue addValue(
51              String className, String tableName, String columnName, long classPK,
52              boolean data)
53          throws PortalException, SystemException {
54  
55          ExpandoTable table = expandoTableLocalService.getTable(
56              className, tableName);
57  
58          ExpandoColumn column = expandoColumnLocalService.getColumn(
59              table.getTableId(), columnName);
60  
61          ExpandoValue value = new ExpandoValueImpl();
62  
63          value.setColumnId(column.getColumnId());
64          value.setBoolean(data);
65  
66          return addValue(
67              table.getClassNameId(), table.getTableId(), column.getColumnId(),
68              classPK, value.getData());
69      }
70  
71      public ExpandoValue addValue(
72              String className, String tableName, String columnName, long classPK,
73              boolean[] data)
74          throws PortalException, SystemException {
75  
76          ExpandoTable table = expandoTableLocalService.getTable(
77              className, tableName);
78  
79          ExpandoColumn column = expandoColumnLocalService.getColumn(
80              table.getTableId(), columnName);
81  
82          ExpandoValue value = new ExpandoValueImpl();
83  
84          value.setColumnId(column.getColumnId());
85          value.setBooleanArray(data);
86  
87          return addValue(
88              table.getClassNameId(), table.getTableId(), column.getColumnId(),
89              classPK, value.getData());
90      }
91  
92      public ExpandoValue addValue(
93              String className, String tableName, String columnName, long classPK,
94              Date data)
95          throws PortalException, SystemException {
96  
97          ExpandoTable table = expandoTableLocalService.getTable(
98              className, tableName);
99  
100         ExpandoColumn column = expandoColumnLocalService.getColumn(
101             table.getTableId(), columnName);
102 
103         ExpandoValue value = new ExpandoValueImpl();
104 
105         value.setColumnId(column.getColumnId());
106         value.setDate(data);
107 
108         return addValue(
109             table.getClassNameId(), table.getTableId(), column.getColumnId(),
110             classPK, value.getData());
111     }
112 
113     public ExpandoValue addValue(
114             String className, String tableName, String columnName, long classPK,
115             Date[] data)
116         throws PortalException, SystemException {
117 
118         ExpandoTable table = expandoTableLocalService.getTable(
119             className, tableName);
120 
121         ExpandoColumn column = expandoColumnLocalService.getColumn(
122             table.getTableId(), columnName);
123 
124         ExpandoValue value = new ExpandoValueImpl();
125 
126         value.setColumnId(column.getColumnId());
127         value.setDateArray(data);
128 
129         return addValue(
130             table.getClassNameId(), table.getTableId(), column.getColumnId(),
131             classPK, value.getData());
132     }
133 
134     public ExpandoValue addValue(
135             String className, String tableName, String columnName, long classPK,
136             double data)
137         throws PortalException, SystemException {
138 
139         ExpandoTable table = expandoTableLocalService.getTable(
140             className, tableName);
141 
142         ExpandoColumn column = expandoColumnLocalService.getColumn(
143             table.getTableId(), columnName);
144 
145         ExpandoValue value = new ExpandoValueImpl();
146 
147         value.setColumnId(column.getColumnId());
148         value.setDouble(data);
149 
150         return addValue(
151             table.getClassNameId(), table.getTableId(), column.getColumnId(),
152             classPK, value.getData());
153     }
154 
155     public ExpandoValue addValue(
156             String className, String tableName, String columnName, long classPK,
157             double[] data)
158         throws PortalException, SystemException {
159 
160         ExpandoTable table = expandoTableLocalService.getTable(
161             className, tableName);
162 
163         ExpandoColumn column = expandoColumnLocalService.getColumn(
164             table.getTableId(), columnName);
165 
166         ExpandoValue value = new ExpandoValueImpl();
167 
168         value.setColumnId(column.getColumnId());
169         value.setDoubleArray(data);
170 
171         return addValue(
172             table.getClassNameId(), table.getTableId(), column.getColumnId(),
173             classPK, value.getData());
174     }
175 
176     public ExpandoValue addValue(
177             String className, String tableName, String columnName, long classPK,
178             float data)
179         throws PortalException, SystemException {
180 
181         ExpandoTable table = expandoTableLocalService.getTable(
182             className, tableName);
183 
184         ExpandoColumn column = expandoColumnLocalService.getColumn(
185             table.getTableId(), columnName);
186 
187         ExpandoValue value = new ExpandoValueImpl();
188 
189         value.setColumnId(column.getColumnId());
190         value.setFloat(data);
191 
192         return addValue(
193             table.getClassNameId(), table.getTableId(), column.getColumnId(),
194             classPK, value.getData());
195     }
196 
197     public ExpandoValue addValue(
198             String className, String tableName, String columnName, long classPK,
199             float[] data)
200         throws PortalException, SystemException {
201 
202         ExpandoTable table = expandoTableLocalService.getTable(
203             className, tableName);
204 
205         ExpandoColumn column = expandoColumnLocalService.getColumn(
206             table.getTableId(), columnName);
207 
208         ExpandoValue value = new ExpandoValueImpl();
209 
210         value.setColumnId(column.getColumnId());
211         value.setFloatArray(data);
212 
213         return addValue(
214             table.getClassNameId(), table.getTableId(), column.getColumnId(),
215             classPK, value.getData());
216     }
217 
218     public ExpandoValue addValue(
219             String className, String tableName, String columnName, long classPK,
220             int data)
221         throws PortalException, SystemException {
222 
223         ExpandoTable table = expandoTableLocalService.getTable(
224             className, tableName);
225 
226         ExpandoColumn column = expandoColumnLocalService.getColumn(
227             table.getTableId(), columnName);
228 
229         ExpandoValue value = new ExpandoValueImpl();
230 
231         value.setColumnId(column.getColumnId());
232         value.setInteger(data);
233 
234         return addValue(
235             table.getClassNameId(), table.getTableId(), column.getColumnId(),
236             classPK, value.getData());
237     }
238 
239     public ExpandoValue addValue(
240             String className, String tableName, String columnName, long classPK,
241             int[] data)
242         throws PortalException, SystemException {
243 
244         ExpandoTable table = expandoTableLocalService.getTable(
245             className, tableName);
246 
247         ExpandoColumn column = expandoColumnLocalService.getColumn(
248             table.getTableId(), columnName);
249 
250         ExpandoValue value = new ExpandoValueImpl();
251 
252         value.setColumnId(column.getColumnId());
253         value.setIntegerArray(data);
254 
255         return addValue(
256             table.getClassNameId(), table.getTableId(), column.getColumnId(),
257             classPK, value.getData());
258     }
259 
260     public ExpandoValue addValue(
261             String className, String tableName, String columnName, long classPK,
262             long data)
263         throws PortalException, SystemException {
264 
265         ExpandoTable table = expandoTableLocalService.getTable(
266             className, tableName);
267 
268         ExpandoColumn column = expandoColumnLocalService.getColumn(
269             table.getTableId(), columnName);
270 
271         ExpandoValue value = new ExpandoValueImpl();
272 
273         value.setColumnId(column.getColumnId());
274         value.setLong(data);
275 
276         return addValue(
277             table.getClassNameId(), table.getTableId(), column.getColumnId(),
278             classPK, value.getData());
279     }
280 
281     public ExpandoValue addValue(
282             String className, String tableName, String columnName, long classPK,
283             long[] data)
284         throws PortalException, SystemException {
285 
286         ExpandoTable table = expandoTableLocalService.getTable(
287             className, tableName);
288 
289         ExpandoColumn column = expandoColumnLocalService.getColumn(
290             table.getTableId(), columnName);
291 
292         ExpandoValue value = new ExpandoValueImpl();
293 
294         value.setColumnId(column.getColumnId());
295         value.setLongArray(data);
296 
297         return addValue(
298             table.getClassNameId(), table.getTableId(), column.getColumnId(),
299             classPK, value.getData());
300     }
301 
302     public ExpandoValue addValue(
303             String className, String tableName, String columnName, long classPK,
304             short data)
305         throws PortalException, SystemException {
306 
307         ExpandoTable table = expandoTableLocalService.getTable(
308             className, tableName);
309 
310         ExpandoColumn column = expandoColumnLocalService.getColumn(
311             table.getTableId(), columnName);
312 
313         ExpandoValue value = new ExpandoValueImpl();
314 
315         value.setColumnId(column.getColumnId());
316         value.setShort(data);
317 
318         return addValue(
319             table.getClassNameId(), table.getTableId(), column.getColumnId(),
320             classPK, value.getData());
321     }
322 
323     public ExpandoValue addValue(
324             String className, String tableName, String columnName, long classPK,
325             short[] data)
326         throws PortalException, SystemException {
327 
328         ExpandoTable table = expandoTableLocalService.getTable(
329             className, tableName);
330 
331         ExpandoColumn column = expandoColumnLocalService.getColumn(
332             table.getTableId(), columnName);
333 
334         ExpandoValue value = new ExpandoValueImpl();
335 
336         value.setColumnId(column.getColumnId());
337         value.setShortArray(data);
338 
339         return addValue(
340             table.getClassNameId(), table.getTableId(), column.getColumnId(),
341             classPK, value.getData());
342     }
343 
344     public ExpandoValue addValue(
345             String className, String tableName, String columnName, long classPK,
346             String data)
347         throws PortalException, SystemException {
348 
349         ExpandoTable table = expandoTableLocalService.getTable(
350             className, tableName);
351 
352         ExpandoColumn column = expandoColumnLocalService.getColumn(
353             table.getTableId(), columnName);
354 
355         ExpandoValue value = new ExpandoValueImpl();
356 
357         value.setColumnId(column.getColumnId());
358         value.setString(data);
359 
360         return addValue(
361             table.getClassNameId(), table.getTableId(), column.getColumnId(),
362             classPK, value.getData());
363     }
364 
365     public ExpandoValue addValue(
366             String className, String tableName, String columnName, long classPK,
367             String[] data)
368         throws PortalException, SystemException {
369 
370         ExpandoTable table = expandoTableLocalService.getTable(
371             className, tableName);
372 
373         ExpandoColumn column = expandoColumnLocalService.getColumn(
374             table.getTableId(), columnName);
375 
376         ExpandoValue value = new ExpandoValueImpl();
377 
378         value.setColumnId(column.getColumnId());
379         value.setStringArray(data);
380 
381         return addValue(
382             table.getClassNameId(), table.getTableId(), column.getColumnId(),
383             classPK, value.getData());
384     }
385 
386     public ExpandoValue addValue(
387             long classNameId, long tableId, long columnId, long classPK,
388             String data)
389         throws SystemException {
390 
391         ExpandoRow row = expandoRowPersistence.fetchByT_C(tableId, classPK);
392 
393         if (row == null) {
394             long rowId = counterLocalService.increment();
395 
396             row = expandoRowPersistence.create(rowId);
397 
398             row.setTableId(tableId);
399             row.setClassPK(classPK);
400 
401             expandoRowPersistence.update(row, false);
402         }
403 
404         ExpandoValue value = expandoValuePersistence.fetchByT_C_R(
405             tableId, columnId, row.getRowId());
406 
407         if (value == null) {
408             long valueId = counterLocalService.increment();
409 
410             value = expandoValuePersistence.create(valueId);
411 
412             value.setTableId(tableId);
413             value.setColumnId(columnId);
414             value.setRowId(row.getRowId());
415             value.setClassNameId(classNameId);
416             value.setClassPK(classPK);
417         }
418 
419         value.setData(data);
420 
421         expandoValuePersistence.update(value, false);
422 
423         return value;
424     }
425 
426     public void deleteColumnValues(long columnId) throws SystemException {
427         expandoValuePersistence.removeByColumnId(columnId);
428     }
429 
430     public void deleteRowValues(long rowId) throws SystemException {
431         expandoValuePersistence.removeByRowId(rowId);
432     }
433 
434     public void deleteTableValues(long tableId) throws SystemException {
435         expandoValuePersistence.removeByTableId(tableId);
436     }
437 
438     public void deleteValue(long valueId)
439         throws PortalException, SystemException {
440 
441         expandoValuePersistence.remove(valueId);
442     }
443 
444     public void deleteValue(long columnId, long rowId)
445         throws PortalException, SystemException {
446 
447         expandoValuePersistence.removeByC_R(columnId, rowId);
448     }
449 
450     public void deleteValue(
451             String className, String tableName, String columnName, long classPK)
452         throws PortalException, SystemException {
453 
454         long classNameId = PortalUtil.getClassNameId(className);
455 
456         deleteValue(classNameId, tableName, columnName, classPK);
457     }
458 
459     public void deleteValue(
460             long classNameId, String tableName, String columnName, long classPK)
461         throws PortalException, SystemException {
462 
463         ExpandoValue value = expandoValueFinder.fetchByTC_TN_CN_C(
464             classNameId, tableName, columnName, classPK);
465 
466         if (value != null) {
467             deleteValue(value.getValueId());
468         }
469     }
470 
471     public void deleteValues(String className, long classPK)
472         throws SystemException {
473 
474         long classNameId = PortalUtil.getClassNameId(className);
475 
476         deleteValues(classNameId, classPK);
477     }
478 
479     public void deleteValues(long classNameId, long classPK)
480         throws SystemException {
481 
482         expandoValuePersistence.removeByC_C(classNameId, classPK);
483     }
484 
485     public List<ExpandoValue> getColumnValues(long columnId, int start, int end)
486         throws SystemException {
487 
488         return expandoValuePersistence.findByColumnId(columnId, start, end);
489     }
490 
491     public List<ExpandoValue> getColumnValues(
492             String className, String tableName, String columnName, int start,
493             int end)
494         throws SystemException {
495 
496         long classNameId = PortalUtil.getClassNameId(className);
497 
498         return getColumnValues(classNameId, tableName, columnName, start, end);
499     }
500 
501     public List<ExpandoValue> getColumnValues(
502             long classNameId, String tableName, String columnName, int start,
503             int end)
504         throws SystemException {
505 
506         return expandoValueFinder.findByTC_TN_CN(
507             classNameId, tableName, columnName, start, end);
508     }
509 
510     public List<ExpandoValue> getColumnValues(
511             String className, String tableName, String columnName, String data,
512             int start, int end)
513         throws SystemException {
514 
515         long classNameId = PortalUtil.getClassNameId(className);
516 
517         return getColumnValues(
518             classNameId, tableName, columnName, data, start, end);
519     }
520 
521     public List<ExpandoValue> getColumnValues(
522             long classNameId, String tableName, String columnName, String data,
523             int start, int end)
524         throws SystemException {
525 
526         return expandoValueFinder.findByTC_TN_CN_D(
527             classNameId, tableName, columnName, data, start, end);
528     }
529 
530     public int getColumnValuesCount(long columnId) throws SystemException {
531         return expandoValuePersistence.countByColumnId(columnId);
532     }
533 
534     public int getColumnValuesCount(
535             String className, String tableName, String columnName)
536         throws SystemException {
537 
538         long classNameId = PortalUtil.getClassNameId(className);
539 
540         return getColumnValuesCount(classNameId, tableName, columnName);
541     }
542 
543     public int getColumnValuesCount(
544             long classNameId, String tableName, String columnName)
545         throws SystemException {
546 
547         return expandoValueFinder.countByTC_TN_CN(
548             classNameId, tableName, columnName);
549     }
550 
551     public int getColumnValuesCount(
552             String className, String tableName, String columnName, String data)
553         throws SystemException {
554 
555         long classNameId = PortalUtil.getClassNameId(className);
556 
557         return getColumnValuesCount(classNameId, tableName, columnName, data);
558     }
559 
560     public int getColumnValuesCount(
561             long classNameId, String tableName, String columnName, String data)
562         throws SystemException {
563 
564         return expandoValueFinder.countByTC_TN_CN_D(
565             classNameId, tableName, columnName, data);
566     }
567 
568     public boolean getData(
569             String className, String tableName, String columnName, long classPK,
570             boolean defaultData)
571         throws PortalException, SystemException {
572 
573         ExpandoValue value = getValue(
574             className, tableName, columnName, classPK);
575 
576         if (value == null) {
577             return defaultData;
578         }
579         else {
580             return value.getBoolean();
581         }
582     }
583 
584     public boolean[] getData(
585             String className, String tableName, String columnName, long classPK,
586             boolean[] defaultData)
587         throws PortalException, SystemException {
588 
589         ExpandoValue value = getValue(
590             className, tableName, columnName, classPK);
591 
592         if (value == null) {
593             return defaultData;
594         }
595         else {
596             return value.getBooleanArray();
597         }
598     }
599 
600     public Date getData(
601             String className, String tableName, String columnName, long classPK,
602             Date defaultData)
603         throws PortalException, SystemException {
604 
605         ExpandoValue value = getValue(
606             className, tableName, columnName, classPK);
607 
608         if (value == null) {
609             return defaultData;
610         }
611         else {
612             return value.getDate();
613         }
614     }
615 
616     public Date[] getData(
617             String className, String tableName, String columnName, long classPK,
618             Date[] defaultData)
619         throws PortalException, SystemException {
620 
621         ExpandoValue value = getValue(
622             className, tableName, columnName, classPK);
623 
624         if (value == null) {
625             return defaultData;
626         }
627         else {
628             return value.getDateArray();
629         }
630     }
631 
632     public double getData(
633             String className, String tableName, String columnName, long classPK,
634             double defaultData)
635         throws PortalException, SystemException {
636 
637         ExpandoValue value = getValue(
638             className, tableName, columnName, classPK);
639 
640         if (value == null) {
641             return defaultData;
642         }
643         else {
644             return value.getDouble();
645         }
646     }
647 
648     public double[] getData(
649             String className, String tableName, String columnName, long classPK,
650             double[] defaultData)
651         throws PortalException, SystemException {
652 
653         ExpandoValue value = getValue(
654             className, tableName, columnName, classPK);
655 
656         if (value == null) {
657             return defaultData;
658         }
659         else {
660             return value.getDoubleArray();
661         }
662     }
663 
664     public float getData(
665             String className, String tableName, String columnName, long classPK,
666             float defaultData)
667         throws PortalException, SystemException {
668 
669         ExpandoValue value = getValue(
670             className, tableName, columnName, classPK);
671 
672         if (value == null) {
673             return defaultData;
674         }
675         else {
676             return value.getFloat();
677         }
678     }
679 
680     public float[] getData(
681             String className, String tableName, String columnName, long classPK,
682             float[] defaultData)
683         throws PortalException, SystemException {
684 
685         ExpandoValue value = getValue(
686             className, tableName, columnName, classPK);
687 
688         if (value == null) {
689             return defaultData;
690         }
691         else {
692             return value.getFloatArray();
693         }
694     }
695 
696     public int getData(
697             String className, String tableName, String columnName, long classPK,
698             int defaultData)
699         throws PortalException, SystemException {
700 
701         ExpandoValue value = getValue(
702             className, tableName, columnName, classPK);
703 
704         if (value == null) {
705             return defaultData;
706         }
707         else {
708             return value.getInteger();
709         }
710     }
711 
712     public int[] getData(
713             String className, String tableName, String columnName, long classPK,
714             int[] defaultData)
715         throws PortalException, SystemException {
716 
717         ExpandoValue value = getValue(
718             className, tableName, columnName, classPK);
719 
720         if (value == null) {
721             return defaultData;
722         }
723         else {
724             return value.getIntegerArray();
725         }
726     }
727 
728     public long getData(
729             String className, String tableName, String columnName, long classPK,
730             long defaultData)
731         throws PortalException, SystemException {
732 
733         ExpandoValue value = getValue(
734             className, tableName, columnName, classPK);
735 
736         if (value == null) {
737             return defaultData;
738         }
739         else {
740             return value.getLong();
741         }
742     }
743 
744     public long[] getData(
745             String className, String tableName, String columnName, long classPK,
746             long[] defaultData)
747         throws PortalException, SystemException {
748 
749         ExpandoValue value = getValue(
750             className, tableName, columnName, classPK);
751 
752         if (value == null) {
753             return defaultData;
754         }
755         else {
756             return value.getLongArray();
757         }
758     }
759 
760     public short getData(
761             String className, String tableName, String columnName, long classPK,
762             short defaultData)
763         throws PortalException, SystemException {
764 
765         ExpandoValue value = getValue(
766             className, tableName, columnName, classPK);
767 
768         if (value == null) {
769             return defaultData;
770         }
771         else {
772             return value.getShort();
773         }
774     }
775 
776     public short[] getData(
777             String className, String tableName, String columnName, long classPK,
778             short[] defaultData)
779         throws PortalException, SystemException {
780 
781         ExpandoValue value = getValue(
782             className, tableName, columnName, classPK);
783 
784         if (value == null) {
785             return defaultData;
786         }
787         else {
788             return value.getShortArray();
789         }
790     }
791 
792     public String getData(
793             String className, String tableName, String columnName, long classPK,
794             String defaultData)
795         throws PortalException, SystemException {
796 
797         ExpandoValue value = getValue(
798             className, tableName, columnName, classPK);
799 
800         if (value == null) {
801             return defaultData;
802         }
803         else {
804             return value.getString();
805         }
806     }
807 
808     public String[] getData(
809             String className, String tableName, String columnName, long classPK,
810             String[] defaultData)
811         throws PortalException, SystemException {
812 
813         ExpandoValue value = getValue(
814             className, tableName, columnName, classPK);
815 
816         if (value == null) {
817             return defaultData;
818         }
819         else {
820             return value.getStringArray();
821         }
822     }
823 
824     public List<ExpandoValue> getDefaultTableColumnValues(
825             String className, String columnName, int start, int end)
826         throws SystemException {
827 
828         long classNameId = PortalUtil.getClassNameId(className);
829 
830         return getDefaultTableColumnValues(classNameId, columnName, start, end);
831     }
832 
833     public List<ExpandoValue> getDefaultTableColumnValues(
834             long classNameId, String columnName, int start, int end)
835         throws SystemException {
836 
837         return getColumnValues(
838             classNameId, ExpandoTableConstants.DEFAULT_TABLE_NAME, columnName,
839             start, end);
840     }
841 
842     public int getDefaultTableColumnValuesCount(
843             String className, String columnName)
844         throws SystemException {
845 
846         long classNameId = PortalUtil.getClassNameId(className);
847 
848         return getDefaultTableColumnValuesCount(classNameId, columnName);
849     }
850 
851     public int getDefaultTableColumnValuesCount(
852             long classNameId, String columnName)
853         throws SystemException {
854 
855         return getColumnValuesCount(
856             classNameId, ExpandoTableConstants.DEFAULT_TABLE_NAME, columnName);
857     }
858 
859     public List<ExpandoValue> getRowValues(long rowId) throws SystemException {
860         return expandoValuePersistence.findByRowId(rowId);
861     }
862 
863     public List<ExpandoValue> getRowValues(long rowId, int start, int end)
864         throws SystemException {
865 
866         return expandoValuePersistence.findByRowId(rowId, start, end);
867     }
868 
869     public List<ExpandoValue> getRowValues(
870             String className, String tableName, long classPK, int start,
871             int end)
872         throws SystemException {
873 
874         long classNameId = PortalUtil.getClassNameId(className);
875 
876         return getRowValues(classNameId, tableName, classPK, start, end);
877     }
878 
879     public List<ExpandoValue> getRowValues(
880             long classNameId, String tableName, long classPK, int start,
881             int end)
882         throws SystemException {
883 
884         return expandoValueFinder.findByTC_TN_C(
885             classNameId, tableName, classPK, start, end);
886     }
887 
888     public int getRowValuesCount(long rowId) throws SystemException {
889         return expandoValuePersistence.countByRowId(rowId);
890     }
891 
892     public int getRowValuesCount(
893             String className, String tableName, long classPK)
894         throws SystemException {
895 
896         long classNameId = PortalUtil.getClassNameId(className);
897 
898         return getRowValuesCount(classNameId, tableName, classPK);
899     }
900 
901     public int getRowValuesCount(
902             long classNameId, String tableName, long classPK)
903         throws SystemException {
904 
905         return expandoValueFinder.countByTC_TN_C(
906             classNameId, tableName, classPK);
907     }
908 
909     public ExpandoValue getValue(long valueId)
910         throws PortalException, SystemException {
911 
912         return expandoValuePersistence.findByPrimaryKey(valueId);
913     }
914 
915     public ExpandoValue getValue(long columnId, long rowId)
916         throws PortalException, SystemException {
917 
918         return expandoValuePersistence.findByC_R(columnId, rowId);
919     }
920 
921     public ExpandoValue getValue(
922             String className, String tableName, String columnName, long classPK)
923         throws SystemException {
924 
925         long classNameId = PortalUtil.getClassNameId(className);
926 
927         return getValue(classNameId, tableName, columnName, classPK);
928     }
929 
930     public ExpandoValue getValue(
931             long classNameId, String tableName, String columnName, long classPK)
932         throws SystemException {
933 
934         return expandoValueFinder.fetchByTC_TN_CN_C(
935             classNameId, tableName, columnName, classPK);
936     }
937 
938 }