1 package org.devaki.nextobjects.workspace.models;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 import java.io.Serializable;
17 import javax.swing.JPanel;
18 import java.util.Vector;
19 import java.io.File;
20 import org.apache.maven.project.Build;
21 import org.apache.maven.project.UnitTest;
22 import org.devaki.nextobjects.NextObjects;
23 import org.devaki.nextobjects.ui.components.CustomTreeNode;
24 import org.devaki.nextobjects.util.ModelMan;
25 import org.devaki.nextobjects.util.NORedoLog;
26 import org.devaki.nextobjects.workspace.models.objects.InheritanceLink;
27 import org.devaki.nextobjects.workspace.models.objects.BaseObject;
28 import org.devaki.nextobjects.workspace.models.graphics.BaseModelView;
29 /***
30 * This is the parent class for most of the models objects
31 *
32 * @author <a href="mailto:eflorent@devaki.org">Emmanuel Florent</a>
33 *
34 * @see http://maven.apache.org/reference/project-descriptor.html
35 * @see http://db.apache.org/torque/generator/schema-reference.html
36 * @see http://db.apache.org/torque/generator/database.dtd.txt
37 */
38 public abstract class BaseModel implements Serializable
39 {
40 /*** The human readable name for the object */
41 private String name = "";
42 /*** The code for this object */
43 private String code = "";
44 /*** The URL to the organization's home page. */
45 private String organizationUrl = "";
46 /*** The full name of the organization */
47 private String organizationName = "";
48 /***
49 * The URL to the organization's logo image. This can be an URL relative to
50 * the base directory of the generated web site, (e.g. /images/org-logo.png
51 * ) or an absolute URL . This value is used
52 * when generating the project documentation.
53 */
54 private String organizationLogo = "";
55 /*** The project url */
56 private String projectURL = "";
57 /*** The description */
58 private String description = "";
59 /*** projects notes */
60 private String notes = "";
61 /*** Inheritance links */
62 private Vector inheritanceLinks = new Vector();
63 /*** labels */
64 private Vector labels = new Vector();
65 /*** Dependencies (maven's) */
66 private transient Vector dependencies = new Vector();
67 /*** Developers */
68 private transient Vector developers = new Vector();
69 /*** The application properties */
70 private transient Vector properties = new Vector();
71 /***Torque's DB type */
72 private int dbType = 1;
73 /*** Database host */
74 private String databaseHost = "127.0.0.1";
75 /*** Database create url */
76 private String createDatabaseUrl = "jdbc:postgresql://127.0.0.1/template1";
77 /*** Database build URL */
78 private String buildDatabaseUrl = "jdbc:postgresql://127.0.0.1/dummydb";
79 /*** Database schema */
80 private String schema = "public";
81 /*** database username */
82 private String databaseUser = "";
83 /*** database */
84 private String databasePassword = "";
85 /*** database jdbc driver */
86 private String databaseDriver = "org.postgresql.Driver";
87 /*** model's wide default id method */
88 private String defaultIdMethod = "none";
89 /*** Torque's heavy indexing */
90 private boolean heavyIndexing = false;
91 /**</package-summary/html">The package name *//package-summary.html">em>* The package name */
92 private String packageName =/package-summary.html">ong> String packageName = "org.devaki.nomodels.om";
93 /*** The base class */
94 private String baseClass = "org.apache.torque.om.BaseObject";
95 /*** the base peer any class that inherits org.apache.util.BasePeer */
96 private String basePeer = "org.apache.util.BasePeer";
97 /*** Default java naming method */
98 private String defaultJavaNamingMethod = "underscore";
99 /*** The default java type */
100 private String defaultJavaType = "primitive";
101
102
103
104 /***
105 * members i picked from maven project descriptor.
106 * http://maven.apache.org/reference/project-descriptor.html The CVS
107 * repositoryConnection
108 */
109 private String repositoryConnection = "scm:cvs:<provider-parameters>";
110 /*** The CVS repositoryUrl */
111 private String repositoryUrl = "scm:cvs:<provider-parameters>";
112 /***
113 * " The Optional. The directory on the web server where the public web
114 * site for this project resides. This is used when the web site is
115 * deployed ."
116 */
117 private String distributionRepository = "";
118 /***
119 * Optional. The directory on the web server where the public web site for
120 * this project resides. This is used when the web site is deployed .
121 */
122 private String siteDirectory = "";
123 /***
124 * Optional. The hostname of the web server that hosts the project's web
125 * site. This is used when the web site is deployed .
126 */
127 private String siteAddress = "";
128 /*** Optional. The URL to the project's issue tracking system. */
129 private String issueTrackingUrl = "";
130 /***
131 * The short name of the project group. This value is used to group all
132 * jars for a project in one directory
133 */
134 private String groupId = "org.devaki";
135 /***
136 * The current version of the project. This value is used when naming jars
137 * and distribution files .
138 */
139 private String currentVersion = "0.1";
140 /*** The short description of the project. */
141 private String shortDescription = "";
142 /***
143 * The year of the project's inception specified with 4 digits. This value
144 * is used when generating JavaDoc copyright notices.
145 */
146 private String inceptionYear = "";
147 /*** Project logo url */
148 private String logo = "";
149 /*** Project logo url */
150 private String parentProject = "";
151 /*** alternate project id, is gumpRepositoryId in project.xml */
152 private String alternateProjectId = "";
153 /*** Contributors */
154 private transient Vector contributors = new Vector();
155 /*** Mailing Lists */
156 private transient Vector mailingLists = new Vector();
157 /*** Builds */
158 private transient Build build = new Build();
159 /*** Licenses */
160 private transient Vector licenses = new Vector();
161 /*** Project Properties */
162 private transient Vector projectProperties = new Vector();
163 /*** file for save this model definitition */
164 private String fileForSave = null;
165 /*** The local directory for this project. */
166 private String localDirectory = null;
167 /*** the model have been saved */
168 private boolean isSaved = false;
169 /*** The model is verified */
170 private boolean isVerified = false;
171 /*** the resulting tree node */
172 private transient CustomTreeNode dynamicTreeNode;
173 /*** the panel to paint */
174 private transient JPanel panel;
175 /*** the model counter */
176 private static int countInstance;
177 /*** The redo log */
178 private transient NORedoLog redoLog;
179 /***
180 * Construct a standard NOModel
181 *
182 * @param pName the model name
183 */
184 public BaseModel(final String pName)
185 {
186 this.name = pName;
187 this.code = this.name.toUpperCase().replace(' ', '_');
188 countInstance++;
189 redoLog = new NORedoLog();
190
191 build.setUnitTest(new UnitTest());
192 }
193 /***
194 * return the objects of the model
195 *
196 * @return array of BaseObject
197 */
198 public abstract BaseObject[] getModelObjects();
199 /***
200 * Return the best possible filename for save
201 *
202 * @return the best filename
203 */
204 public abstract String getBestFilename();
205 /***
206 * Get the model view
207 *
208 * @return model view
209 */
210 public abstract BaseModelView getModelView();
211 /***
212 * Returns a String representation of the NOModel
213 *
214 * @return the model name
215 */
216 public final String toString()
217 {
218 return this.name;
219 }
220 /***
221 * Set the node associated
222 *
223 * @param pNode the node
224 */
225 public final void setDynamicTreeNode(final CustomTreeNode pNode)
226 {
227 this.dynamicTreeNode = pNode;
228 }
229 /***
230 * Set the panel associated
231 *
232 * @param pPanel the panel
233 */
234 public final void setPanel(final JPanel pPanel)
235 {
236 this.panel = pPanel;
237 }
238 /***
239 * Set the code of the model
240 *
241 * @param pCode the new code
242 */
243 public final void setId(final String pCode)
244 {
245 this.code = pCode;
246 }
247 /***
248 * Set the notes of the project
249 *
250 * @param pNotes some notes on the project
251 */
252 public final void setNotes(final String pNotes)
253 {
254 this.notes = pNotes;
255 }
256 /***
257 * Set the company to which the project depends on
258 *
259 * @param pCompany the author company
260 */
261 public final void setCompany(final String pCompany)
262 {
263 this.organizationName = pCompany;
264 }
265 /***
266 * Set the HTTP address of the project
267 *
268 * @param pProjectURL the project url
269 */
270 public final void setProjectURL(final String pProjectURL)
271 {
272 this.projectURL = pProjectURL;
273 }
274 /***
275 * Set the name of the java package (Object-Model)
276 *
277 * @param pPackageName the package name
278 */
279 public final void setPackageName(final String pPackageName)
280 {
281 this.packageName = pPackageName;
282 }
283 /***
284 * Set the name of the base class (Object-Model)
285 *
286 * @param pBaseClass the base class
287 */
288 public final void setBaseClass(final String pBaseClass)
289 {
290 this.baseClass = pBaseClass;
291 }
292 /***
293 * Set the name of the base peer (Object-Model)
294 *
295 * @param pBasePeer the basePeer
296 */
297 public final void setBasePeer(final String pBasePeer)
298 {
299 this.basePeer = pBasePeer;
300 }
301 /***
302 * Determines how table or column names, from the name attribute of the
303 * table or column element, are converted to a Java class or method name
304 * respectively when creating the OM Java objects
305 *
306 * @param pMethod the default java naming method
307 */
308 public final void setDefaultJavaNamingMethod(final String pMethod)
309 {
310 if (pMethod.equals("nochange")
311 || pMethod.equals("javaname"))
312 {
313 this.defaultJavaNamingMethod = pMethod;
314 }
315 else
316 {
317 this.defaultJavaNamingMethod = "underscore";
318 }
319 }
320 /***
321 * Default type of columns in the database
322 *
323 * @param pDefaultJavaType the default java type
324 */
325 public final void setDefaultJavaType(final String pDefaultJavaType)
326 {
327 if (pDefaultJavaType.equals("object"))
328 {
329 this.defaultJavaType = pDefaultJavaType;
330 }
331 else
332 {
333 this.defaultJavaType = "primitive";
334 }
335 }
336 /***
337 * Set the file path to save
338 *
339 * @param pFileForSave the file for save
340 */
341 public final void setFileForSave(final String pFileForSave)
342 {
343 this.fileForSave = pFileForSave;
344 this.setLocalDirectory(new File(pFileForSave).getPath());
345 }
346 /***
347 * Set the database type
348 *
349 * @param pDbType the db type
350 */
351 public final void setDbType(final int pDbType)
352 {
353 this.dbType = pDbType;
354 }
355 /***
356 * Set the URL that Torque can use to create and drop databases
357 *
358 * @param pCreateDatabaseUrl the create database url
359 */
360 public final void setCreateDatabaseUrl(final String pCreateDatabaseUrl)
361 {
362 this.createDatabaseUrl = pCreateDatabaseUrl;
363 }
364 /***
365 * Set The URL that will be used to access your database. Torque can use
366 * this to create your tables
367 *
368 * @param pBuildDatabaseUrl the build database url
369 */
370 public final void setBuildDatabaseUrl(final String pBuildDatabaseUrl)
371 {
372 this.buildDatabaseUrl = pBuildDatabaseUrl;
373 }
374 /***
375 * Set The schema that will be used to access your database.
376 *
377 * @param pSchema the schema
378 */
379 public final void setSchema(final String pSchema)
380 {
381 this.schema = pSchema;
382 }
383 /***
384 * Set the administrative username that has sufficient privileges to create
385 * and drop databases and tables
386 *
387 * @param pDatabaseUser the database user
388 */
389 public final void setDatabaseUser(final String pDatabaseUser)
390 {
391 this.databaseUser = pDatabaseUser;
392 }
393 /***
394 * Set the administrative password for the supplied username
395 *
396 * @param pDatabasePassword the database password
397 */
398 public final void setDatabasePassword(final String pDatabasePassword)
399 {
400 this.databasePassword = pDatabasePassword;
401 }
402 /***
403 * Set the JDBC Driver to use for Test Connect
404 *
405 * @param pDatabaseDriver the database driver
406 */
407 public final void setDatabaseDriver(final String pDatabaseDriver)
408 {
409 this.databaseDriver = pDatabaseDriver;
410 }
411 /***
412 * Set the hostname or IP address of your database server
413 *
414 * @param pDatabaseHost the database host
415 */
416 public final void setDatabaseHost(final String pDatabaseHost)
417 {
418 this.databaseHost = pDatabaseHost;
419 }
420 /***
421 * Set how will the primary keys be created
422 *
423 * @param pDefaultIdMethod the default id method
424 */
425 public final void setDefaultIdMethod(final String pDefaultIdMethod)
426 {
427 if (pDefaultIdMethod.equals("idbroker")
428 || pDefaultIdMethod.equals("native")
429 || pDefaultIdMethod.equals("autoincrement"))
430 {
431 this.defaultIdMethod = pDefaultIdMethod;
432 }
433 else
434 {
435 this.defaultIdMethod = "native";
436 }
437 }
438 /***
439 * -
440 *
441 * @param pHeavyIndexing heavyindexing
442 */
443 public final void setHeavyIndexing(final boolean pHeavyIndexing)
444 {
445 this.heavyIndexing = pHeavyIndexing;
446 }
447 /***
448 * Set a description
449 *
450 * @param pDescription the description
451 */
452 public final void setDescription(final String pDescription)
453 {
454 this.description = pDescription;
455 }
456 /***
457 * Set the name of the model
458 *
459 * @param pName the new name
460 */
461 public final void setName(final String pName)
462 {
463 this.name = pName;
464 NextObjects.getReference().getNOWorkspace().setTitleAt(
465 ModelMan.getModels().size() - 1,
466 pName);
467 }
468 /***
469 * Get the associated node
470 *
471 * @return the node
472 */
473 public final CustomTreeNode getDynamicTreeNode()
474 {
475 return this.dynamicTreeNode;
476 }
477 /***
478 * Get the panel associated
479 *
480 * @return the panel
481 */
482 public final JPanel getPanel()
483 {
484 return this.panel;
485 }
486 /***
487 * Get the code of the model
488 *
489 * @return the code
490 */
491 public final String getId()
492 {
493 return this.code;
494 }
495 /***
496 * Get the notes of the model
497 *
498 * @return the notes
499 */
500 public final String getNotes()
501 {
502 return this.notes;
503 }
504 /***
505 * Get the email of the author of the model
506 *
507 * @return the author email
508 */
509 public final String getAuthorEmail()
510 {
511 return this.organizationUrl;
512 }
513 /***
514 * Get the company to which the project depends on
515 *
516 * @return the company name
517 */
518 public final String getCompany()
519 {
520 return this.organizationName;
521 }
522 /***
523 * Get the project url
524 *
525 * @return the project url
526 */
527 public final String getProjectURL()
528 {
529 return this.projectURL;
530 }
531 /***
532 * Get the name of the java package (Object-Model)
533 *
534 * @return the package name
535 */
536 public final String getPackageName()
537 {
538 return</strong> this.packageName;
539 }
540 /***
541 * Get the name of the base class (Object-Model)
542 *
543 * @return the base class
544 */
545 public final String getBaseClass()
546 {
547 return this.baseClass;
548 }
549 /***
550 * Get the name of the base peer (Object-Model)
551 *
552 * @return the base peer
553 */
554 public final String getBasePeer()
555 {
556 return this.basePeer;
557 }
558 /***
559 * Get the default java naming method
560 *
561 * @return the default java naming method
562 */
563 public final String getDefaultJavaNamingMethod()
564 {
565 return this.defaultJavaNamingMethod;
566 }
567 /***
568 * Default type of columns in the database
569 *
570 * @return the default java type
571 */
572 public final String getDefaultJavaType()
573 {
574 return this.defaultJavaType;
575 }
576 /***
577 * Get the file path to save
578 *
579 * @return the file for save
580 */
581 public final String getFileForSave()
582 {
583 return this.fileForSave;
584 }
585 /***
586 * Get the database type
587 *
588 * @return db type
589 */
590 public final int getDbType()
591 {
592 return this.dbType;
593 }
594 /***
595 * Get the URL that Torque can use to create and drop databases
596 *
597 * @return the url
598 */
599 public final String getCreateDatabaseUrl()
600 {
601 return this.createDatabaseUrl;
602 }
603 /***
604 * Get The URL that will be used to access your database. Torque can use
605 * this to create your tables
606 *
607 * @return the url
608 */
609 public final String getBuildDatabaseUrl()
610 {
611 return this.buildDatabaseUrl;
612 }
613 /***
614 * Get the schema that Torque can use to create and drop databases
615 *
616 * @return the database schema
617 */
618 public final String getSchema()
619 {
620 return this.schema;
621 }
622 /***
623 * Get the administrative username that has sufficient privileges to create
624 * and drop databases and tables
625 *
626 * @return the database user
627 */
628 public final String getDatabaseUser()
629 {
630 return this.databaseUser;
631 }
632 /***
633 * Get the administrative password for the supplied username
634 *
635 * @return the database password
636 */
637 public final String getDatabasePassword()
638 {
639 return this.databasePassword;
640 }
641 /***
642 * Get the DatabseDriver to Test Connect
643 *
644 * @return the database driver
645 */
646 public final String getDatabaseDriver()
647 {
648 return this.databaseDriver;
649 }
650 /***
651 * Get the hostname or IP address of your database server
652 *
653 * @return the database host
654 */
655 public final String getDatabaseHost()
656 {
657 return this.databaseHost;
658 }
659 /***
660 * Get how will the primary keys be created
661 *
662 * @return the default id method
663 */
664 public final String getDefaultIdMethod()
665 {
666 return this.defaultIdMethod;
667 }
668 /***
669 * Heavy indexing
670 *
671 * @return use it
672 */
673 public final boolean getHeavyIndexing()
674 {
675 return this.heavyIndexing;
676 }
677 /***
678 * Get the description
679 *
680 * @return the description
681 */
682 public final String getDescription()
683 {
684 return this.description;
685 }
686 /***
687 * Get the name of the model
688 *
689 * @return the name
690 */
691 public final String getName()
692 {
693 return this.name;
694 }
695 /***
696 * Return the inheritance links of the model
697 *
698 * @return the links
699 */
700 public final Vector getInheritanceLinks()
701 {
702 return this.inheritanceLinks;
703 }
704 /***
705 * Return an inheritance links of the model
706 *
707 * @param i index
708 * @return the link
709 */
710 public final InheritanceLink getInheritanceLinkAt(final int i)
711 {
712 return (InheritanceLink) this.inheritanceLinks.elementAt(i);
713 }
714 /***
715 * Return the classes of the model
716 *
717 * @return the classes
718 */
719 public final Vector getClasses()
720 {
721 if (this instanceof PhysicalModel)
722 {
723 return ((PhysicalModel) this).getTables();
724 }
725 else
726 {
727 Vector v = new Vector(((ConceptualModel) this).getEntities());
728 v.addAll(((ConceptualModel) this).getAssociations());
729 return v;
730 }
731 }
732 /***
733 * Return the inheritance links, constraints, halfAssociations of the model
734 *
735 * @return the links
736 */
737 public final Vector getLinks()
738 {
739 Vector links = new Vector();
740 if (this instanceof PhysicalModel)
741 {
742 links = new Vector(((PhysicalModel) this).getConstraints());
743 }
744 else
745 {
746 links = new Vector(((ConceptualModel) this).getAssociationLinks());
747 }
748 links.addAll(this.getInheritanceLinks());
749 return links;
750 }
751 /***
752 * Return the labels of the model
753 *
754 * @return the classes
755 */
756 public final Vector getLabels()
757 {
758 return labels;
759 }
760 /***
761 * The model is saved
762 *
763 * @return is saved
764 */
765 public final boolean isSaved()
766 {
767 return isSaved;
768 }
769 /***
770 * The model is verified
771 *
772 * @return is verified
773 */
774 public final boolean isVerified()
775 {
776 return isVerified;
777 }
778 /***
779 * The model is saved
780 *
781 * @param b is saved
782 */
783 public final void setSaved(final boolean b)
784 {
785 isSaved = b;
786 }
787 /***
788 * The model is verified
789 *
790 * @param b is verified
791 */
792 public final void setVerified(final boolean b)
793 {
794 isVerified = b;
795 }
796 /***
797 * Return a reference to all the developers
798 *
799 * @return the developers
800 */
801 public final Vector getDevelopers()
802 {
803 return developers;
804 }
805 /***
806 * Set a reference to a dependencies vector
807 *
808 * @param vector the dependencies
809 */
810 public final void setDependencies(final Vector vector)
811 {
812 dependencies = vector;
813 }
814 /***
815 * Get the Repository Connection
816 *
817 * @return the repository connection
818 */
819 public final String getRepositoryConnection()
820 {
821 return repositoryConnection;
822 }
823 /***
824 * Set the repository connection
825 *
826 * @param string the repository connection
827 */
828 public final void setRepositoryConnection(final String string)
829 {
830 repositoryConnection = string;
831 }
832 /***
833 * Get the issue tracking url
834 *
835 * @return the issue tracking url
836 */
837 public final String getIssueTrackingUrl()
838 {
839 return issueTrackingUrl;
840 }
841 /***
842 * Get the repository url
843 *
844 * @return the repository url
845 */
846 public final String getRepositoryUrl()
847 {
848 return repositoryUrl;
849 }
850 /***
851 * Get the site adress
852 *
853 * @return the site adress
854 */
855 public final String getSiteAdress()
856 {
857 return siteAddress;
858 }
859 /***
860 * Get the site directory
861 *
862 * @return the site directory
863 */
864 public final String getSiteDirectory()
865 {
866 return siteDirectory;
867 }
868 /***
869 * set the issue tracking url
870 *
871 * @param string the issue tracking url
872 */
873 public final void setIssueTrackingUrl(final String string)
874 {
875 issueTrackingUrl = string;
876 }
877 /***
878 * Set the repository url
879 *
880 * @param string the repository url
881 */
882 public final void setRepositoryUrl(final String string)
883 {
884 repositoryUrl = string;
885 }
886 /***
887 * Set the site adress
888 *
889 * @param string the site adress
890 */
891 public final void setSiteAddress(final String string)
892 {
893 siteAddress = string;
894 }
895 /***
896 * Set the site directory
897 *
898 * @param string the site directory
899 */
900 public final void setSiteDirectory(final String string)
901 {
902 siteDirectory = string;
903 }
904 /***
905 * Get th the current version
906 *
907 * @return the current version
908 */
909 public final String getCurrentVersion()
910 {
911 return currentVersion;
912 }
913 /***
914 * Get the dependencies
915 *
916 * @return the dependencies
917 */
918 public final Vector getDependencies()
919 {
920 return dependencies;
921 }
922 /***
923 * Get the distribution directory
924 *
925 * @return the distribution directory
926 */
927 public final String getDistributionDirectory()
928 {
929 return distributionRepository;
930 }
931 /***
932 * Get the group id
933 *
934 * @return the group id
935 */
936 public final String getGroupId()
937 {
938 return groupId;
939 }
940 /***
941 * Set the current version
942 *
943 * @param string the current version
944 */
945 public final void setCurrentVersion(final String string)
946 {
947 currentVersion = string;
948 }
949 /***
950 * Set the distribution directory
951 *
952 * @param string the distribution directory
953 */
954 public final void setDistributionDirectory(final String string)
955 {
956 distributionRepository = string;
957 }
958 /***
959 * Set the group id
960 *
961 * @param string the group id
962 */
963 public final void setGroupId(final String string)
964 {
965 groupId = string;
966 }
967 /***
968 * Get the organization logo
969 *
970 * @return the organization logo
971 */
972 public final String getOrganizationLogo()
973 {
974 return organizationLogo;
975 }
976 /***
977 * Get the organization name
978 *
979 * @return the organization name
980 */
981 public final String getOrganizationName()
982 {
983 return organizationName;
984 }
985 /***
986 * Get the organization url
987 *
988 * @return the organization url
989 */
990 public final String getOrganizationUrl()
991 {
992 return organizationUrl;
993 }
994 /***
995 * The organization logo
996 *
997 * @param string the organization logo
998 */
999 public final void setOrganizationLogo(final String string)
1000 {
1001 organizationLogo = string;
1002 }
1003 /***
1004 * Set the organization name
1005 *
1006 * @param string the organization name
1007 */
1008 public final void setOrganizationName(final String string)
1009 {
1010 organizationName = string;
1011 }
1012 /***
1013 * Set the organization name
1014 *
1015 * @param string the organization name
1016 */
1017 public final void setOrganizationUrl(final String string)
1018 {
1019 organizationUrl = string;
1020 }
1021 /***
1022 * get the inception year
1023 *
1024 * @return the inception year
1025 */
1026 public final String getInceptionYear()
1027 {
1028 return inceptionYear;
1029 }
1030 /***
1031 * Set the inception year
1032 *
1033 * @param string the inception year
1034 */
1035 public final void setInceptionYear(final String string)
1036 {
1037 inceptionYear = string;
1038 }
1039 /***
1040 * Get the logo
1041 *
1042 * @return the logo
1043 */
1044 public final String getLogo()
1045 {
1046 return logo;
1047 }
1048 /***
1049 * Set the logo
1050 *
1051 * @param string the logo
1052 */
1053 public final void setLogo(final String string)
1054 {
1055 logo = string;
1056 }
1057 /***
1058 * Get the local directory
1059 *
1060 * @return the local directory
1061 */
1062 public final String getLocalDirectory()
1063 {
1064 return localDirectory;
1065 }
1066 /***
1067 * Set the local directory
1068 *
1069 * @param string the local direcory
1070 */
1071 public final void setLocalDirectory(final String string)
1072 {
1073 localDirectory = string;
1074 }
1075 /***
1076 * Get the alternate project id
1077 *
1078 * @return the alternate project id
1079 */
1080 public final String getAlternateProjectId()
1081 {
1082 return alternateProjectId;
1083 }
1084 /***
1085 * Get the parent project
1086 *
1087 * @return the parent project name
1088 */
1089 public final String getParentProject()
1090 {
1091 return parentProject;
1092 }
1093 /***
1094 * Set the alternate project id
1095 *
1096 * @param string alternate project id
1097 */
1098 public final void setAlternateProjectId(final String string)
1099 {
1100 alternateProjectId = string;
1101 }
1102 /***
1103 * Set the parent project id
1104 *
1105 * @param string the parent project id
1106 */
1107 public final void setParentProject(final String string)
1108 {
1109 parentProject = string;
1110 }
1111 /***
1112 * Get the project properties
1113 *
1114 * @return the project properties
1115 */
1116 public final Vector getProjectProperties()
1117 {
1118 return projectProperties;
1119 }
1120 /***
1121 * Set( the project properties
1122 *
1123 * @param vector the project properties
1124 */
1125 public final void setProjectProperties(final Vector vector)
1126 {
1127 projectProperties = vector;
1128 }
1129 /***
1130 * Get the short description
1131 *
1132 * @return the short description
1133 */
1134 public final String getShortDescription()
1135 {
1136 return shortDescription;
1137 }
1138 /***
1139 * Set the short description
1140 *
1141 * @param string the short description
1142 */
1143 public final void setShortDescription(final String string)
1144 {
1145 shortDescription = string;
1146 }
1147 /***
1148 * Get the build
1149 *
1150 * @return the maven's build
1151 */
1152 public final Build getBuild()
1153 {
1154 return build;
1155 }
1156 /***
1157 * Set the build
1158 *
1159 * @param pBuild the build
1160 */
1161 public final void setBuild(final Build pBuild)
1162 {
1163 build = pBuild;
1164 }
1165 /***
1166 * Get the licenses
1167 *
1168 * @return the licenses
1169 */
1170 public final Vector getLicenses()
1171 {
1172 return licenses;
1173 }
1174 /***
1175 * Set the licenses
1176 *
1177 * @param vector the licenses
1178 */
1179 public final void setLicenses(final Vector vector)
1180 {
1181 licenses = vector;
1182 }
1183 /***
1184 * Get the contributors
1185 *
1186 * @return the contributors
1187 */
1188 public final Vector getContributors()
1189 {
1190 return contributors;
1191 }
1192 /***
1193 * Get the mailing list
1194 *
1195 * @return the mailing lists
1196 */
1197 public final Vector getMailingLists()
1198 {
1199 return mailingLists;
1200 }
1201 /***
1202 * Get the site adress
1203 *
1204 * @return the site adress
1205 */
1206 public final String getSiteAddress()
1207 {
1208 return siteAddress;
1209 }
1210 /***
1211 * Set the contributors
1212 *
1213 * @param vector the contributors
1214 */
1215 public final void setContributors(final Vector vector)
1216 {
1217 contributors = vector;
1218 }
1219 /***
1220 * Set the mailing lists
1221 *
1222 * @param vector the mailing lists
1223 */
1224 public final void setMailingLists(final Vector vector)
1225 {
1226 mailingLists = vector;
1227 }
1228 /***
1229 * Set the developers
1230 *
1231 * @param vector the developers
1232 */
1233 public final void setDevelopers(final Vector vector)
1234 {
1235 developers = vector;
1236 }
1237 /***
1238 * Get the properties
1239 *
1240 * @return the properties
1241 */
1242 public final Vector getProperties()
1243 {
1244 return properties;
1245 }
1246 /***
1247 * Set the properties
1248 *
1249 * @param vector the properties
1250 */
1251 public final void setProperties(final Vector vector)
1252 {
1253 properties = vector;
1254 }
1255 /***
1256 * Get a serial number
1257 * @return instance count
1258 */
1259 public static int getCountInstance()
1260 {
1261 return countInstance;
1262 }
1263
1264 /***
1265 * Get the redolog stack
1266 * @return the redo log
1267 */
1268 public final NORedoLog getRedoLog()
1269 {
1270 return redoLog;
1271 }
1272 }