1 /* $Id: Package.java 421 2011-07-29 09:55:09Z dobashi $
\r
3 * (c)2004 Lavans Networks Inc. All Rights Reserved.
\r
5 package com.lavans.lacoder.model;
\r
7 import java.util.ArrayList;
\r
8 import java.util.List;
\r
14 public class Package {
\r
15 private static final String PRESENTATION = "presentation";
\r
16 private static final String DOMAIN = "domain";
\r
17 private static final String SERVICE = "service";
\r
18 private static List<Package> allList = new ArrayList<Package>();
\r
19 public static boolean addPackage(Package p) {
\r
20 return allList.add(p);
\r
22 public static List<Package> getAllList(){
\r
25 public static Package getPackage(String name){
\r
26 Package result = null;
\r
27 for(int i=0; i<allList.size(); i++){
\r
28 Package pkg = allList.get(i);
\r
29 if(pkg.getName().equals(name)){
\r
37 private String fqdn = null;
\r
38 private String project = null;
\r
39 private String subname=null;
\r
41 private List<Entity> entityList = new ArrayList<Entity>();
\r
42 private List<EnumClass> enumList= new ArrayList<EnumClass>();
\r
43 private List<Service> serviceList= new ArrayList<Service>();
\r
45 public Entity getEntity(String name){
\r
46 Entity result = null;
\r
47 for(int i=0; i<entityList.size(); i++){
\r
48 Entity table = entityList.get(i);
\r
49 if(table.getName().equals(name)){
\r
56 public EnumClass getEnum(String name){
\r
57 EnumClass result = null;
\r
58 for(int i=0; i<enumList.size(); i++){
\r
59 EnumClass enums = enumList.get(i);
\r
60 if(enums.getName().equals(name)){
\r
67 public Service getService(String name){
\r
68 Service result = null;
\r
69 for(int i=0; i<serviceList.size(); i++){
\r
70 Service service = serviceList.get(i);
\r
71 if(service.getName().equals(name)){
\r
81 * @return fullname(domain.project.package) を戻します。
\r
82 * パッケージを特定するためのキーとしてのみ利用します。
\r
83 * lacoderが生成するクラスではこの組み合わせ(projectの次にsubname)のjavaパッケージは存在しません。
\r
86 public String getName() {
\r
87 return fqdn+"."+project+"."+subname;
\r
90 * @return fullname(domain.project.package) を戻します。
\r
92 public String getDomainPath() {
\r
93 return fqdn+"."+project+"."+DOMAIN ;
\r
96 public String getDomainSubPackagePath() {
\r
97 return fqdn+"."+project+"."+DOMAIN +"."+ subname;
\r
99 public String getServiceSubPackagePath() {
\r
100 return fqdn+"."+project+"."+SERVICE +"."+ subname;
\r
102 public String getPresentationPath() {
\r
103 return fqdn+"."+project+"."+PRESENTATION;
\r
106 * Actionのpathを取得します。Actionはroleの下にあるので引数でroleをとります。
\r
109 public String getActionPath(String role) {
\r
110 return getPresentationPath()+"."+ role +"."+ subname +".action";
\r
113 * jspのpathを取得します。Actionはroleの下にあるので引数でroleをとります。
\r
116 public String getJspPath(String role) {
\r
117 return getPresentationPath()+"."+ role +"."+ subname +".jsp";
\r
121 * @return package名のみを戻します。
\r
123 public String getSubPackageName() {
\r
128 * @param name name を設定。
\r
130 public void setName(String fqdn, String project, String name) {
\r
131 this.subname = name;
\r
133 this.project = project;
\r
139 public boolean addEntity(Entity entity) {
\r
140 entity.setParentPackage(this);
\r
141 return entityList.add(entity);
\r
147 public Entity getEntity(int arg0) {
\r
148 return entityList.get(arg0);
\r
154 public boolean removeEntity(Object arg0) {
\r
155 return entityList.remove(arg0);
\r
160 public int entitySize() {
\r
161 return entityList.size();
\r
168 public boolean addEnum(EnumClass arg0) {
\r
169 return enumList.add(arg0);
\r
175 public EnumClass getEnum(int arg0) {
\r
176 return enumList.get(arg0);
\r
182 public boolean removeEnum(Object arg0) {
\r
183 return enumList.remove(arg0);
\r
188 public int enumSize() {
\r
189 return enumList.size();
\r
192 public boolean addService(Service arg0) {
\r
193 return serviceList.add(arg0);
\r
195 public Service getService(int arg0) {
\r
196 return serviceList.get(arg0);
\r
198 public Service removeService(int arg0) {
\r
199 return serviceList.remove(arg0);
\r
204 public int serviceSize() {
\r
205 return serviceList.size();
\r
209 * @return domain を戻します。
\r
211 public String getFqdn() {
\r
215 * @param domain domain を設定。
\r
217 public void setFqdn(String domain) {
\r
218 this.fqdn = domain;
\r
221 * @return project を戻します。
\r
223 public String getProject() {
\r
227 * @param project project を設定。
\r
229 public void setProject(String project) {
\r
230 this.project = project;
\r