KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > outerj > daisy > repository > commonimpl > AvailableVariantImpl


1 /*
2  * Copyright 2004 Outerthought bvba and Schaubroeck nv
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16 package org.outerj.daisy.repository.commonimpl;
17
18 import org.outerj.daisy.repository.AvailableVariant;
19 import org.outerj.daisy.repository.RepositoryException;
20 import org.outerj.daisy.repository.commonimpl.variant.CommonVariantManager;
21 import org.outerj.daisy.repository.variant.Branch;
22 import org.outerj.daisy.repository.variant.Language;
23 import org.outerx.daisy.x10.AvailableVariantDocument;
24
25 public class AvailableVariantImpl implements AvailableVariant {
26     private final long branchId;
27     private final long languageId;
28     private final boolean retired;
29     private final long liveVersionId;
30     private final CommonVariantManager variantManager;
31     private final AuthenticatedUser user;
32
33     public AvailableVariantImpl(long branchId, long languageId, boolean retired, long liveVersionId, CommonVariantManager variantManager, AuthenticatedUser user) {
34         this.branchId = branchId;
35         this.languageId = languageId;
36         this.retired = retired;
37         this.liveVersionId = liveVersionId;
38         this.variantManager = variantManager;
39         this.user = user;
40     }
41
42     public Branch getBranch() throws RepositoryException {
43         return variantManager.getBranch(branchId, false, user);
44     }
45
46     public Language getLanguage() throws RepositoryException {
47         return variantManager.getLanguage(languageId, false, user);
48     }
49
50     public long getBranchId() {
51         return branchId;
52     }
53
54     public long getLanguageId() {
55         return languageId;
56     }
57
58     public boolean isRetired() {
59         return retired;
60     }
61
62     public long getLiveVersionId() {
63         return liveVersionId;
64     }
65
66     public AvailableVariantDocument getXml() {
67         try {
68             return getXml(false);
69         } catch (RepositoryException e) {
70             // getXml only throws an exception if includeVariantNames is true
71
throw new RuntimeException JavaDoc(e);
72         }
73     }
74
75     public AvailableVariantDocument getXml(boolean includeVariantNames) throws RepositoryException {
76         AvailableVariantDocument document = AvailableVariantDocument.Factory.newInstance();
77         AvailableVariantDocument.AvailableVariant availableVariantXml = document.addNewAvailableVariant();
78         availableVariantXml.setBranchId(branchId);
79         availableVariantXml.setLanguageId(languageId);
80         if (includeVariantNames) {
81             availableVariantXml.setBranchName(getBranch().getName());
82             availableVariantXml.setLanguageName(getLanguage().getName());
83         }
84         availableVariantXml.setRetired(retired);
85         availableVariantXml.setLiveVersionId(liveVersionId);
86         return document;
87     }
88 }
89
Popular Tags