Source code: com/opencms/file/I_CmsRegistry.java
1 /*
2 * File : $Source: /usr/local/cvs/opencms/src/com/opencms/file/Attic/I_CmsRegistry.java,v $
3 * Date : $Date: 2003/03/04 18:48:06 $
4 * Version: $Revision: 1.40 $
5 *
6 * This library is part of OpenCms -
7 * the Open Source Content Mananagement System
8 *
9 * Copyright (C) 2001 The OpenCms Group
10 *
11 * This library is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU Lesser General Public
13 * License as published by the Free Software Foundation; either
14 * version 2.1 of the License, or (at your option) any later version.
15 *
16 * This library is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 * Lesser General Public License for more details.
20 *
21 * For further information about OpenCms, please see the
22 * OpenCms Website: http://www.opencms.org
23 *
24 * You should have received a copy of the GNU Lesser General Public
25 * License along with this library; if not, write to the Free Software
26 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
27 */
28
29 package com.opencms.file;
30
31 import java.util.*;
32 import com.opencms.core.*;
33 import com.opencms.report.I_CmsReport;
34
35 /**
36 * This interface describes the registry for OpenCms.
37 *
38 * @author Andreas Schouten
39 * @author Thomas Weckert (t.weckert@alkacon.com)
40 * @version $Revision: 1.40 $ $Date: 2003/03/04 18:48:06 $
41 */
42 public interface I_CmsRegistry extends Cloneable {
43
44 public static final int C_ANY_VERSION = -1;
45
46 /** The name of the folder to extend the exportpath */
47 public static final String C_MODULE_PATH = "modules/";
48
49 /** Type identificator for "traditional" modules */
50 public static final String C_MODULE_TYPE_TRADITIONAL = "traditional";
51
52 /** Type identificator for "simple" (5.0 style) modules */
53 public static final String C_MODULE_TYPE_SIMPLE = "simple";
54
55 /**
56 * This method clones the registry.
57 *
58 * @param CmsObject the current cms-object for the user.
59 * @return the cloned registry.
60 */
61 public I_CmsRegistry clone(CmsObject cms);
62
63 /**
64 * This method creates a new module in the repository.
65 *
66 * @param modulename the name of the module
67 * @param niceModulename another name of the module
68 * @param description the description of the module
69 * @param author the name of the author
70 * @param type the type of the module
71 * @param exportPoints a map of all export points of the module
72 * @param createDate the creation date of the module
73 * @param version the version number of the module
74 * @throws CmsException if the user has no right to create a new module
75 */
76 public void createModule(
77 String modulename,
78 String niceModulename,
79 String description,
80 String author,
81 String type,
82 Map exportPoints,
83 long createDate,
84 float version)
85 throws CmsException;
86
87 /**
88 * This method creates a new module in the repository.
89 *
90 * @param modulename the name of the module
91 * @param niceModulename another name of the module
92 * @param description the description of the module
93 * @param author the name of the author
94 * @param type the type of the module
95 * @param exportPoints a map of all export points of the module
96 * @param createDate the creation date of the module in the format: mm.dd.yyyy
97 * @param version the version number of the module
98 * @throws CmsException if the user has no right to create a new module
99 */
100 public void createModule(
101 String modulename,
102 String niceModulename,
103 String description,
104 String author,
105 String type,
106 Map exportPoints,
107 String createDate,
108 float version)
109 throws CmsException;
110
111 /**
112 * Checks which modules depend on this module.<p>
113 *
114 * If a module depends on this module, the name will be returned in the vector.<p>
115 *
116 * @param replaceMode if <code>true</code> this is for module replacement,
117 * if <code>false</code> it is form module deletion
118 * @return a Vector with modulenames that depends on the overgiven module.
119 */
120 public Vector deleteCheckDependencies(String modulename, boolean replaceMode) throws CmsException;
121
122 /**
123 * This method checks for conflicting files before the deletion of a module.
124 * It uses several Vectors to return the different conflicting files.
125 *
126 * @param modulename the name of the module that should be deleted.
127 * @param filesWithProperty a return value. The files that are marked with the module-property for this module.
128 * @param missingFiles a return value. The files that are missing.
129 * @param wrongChecksum a return value. The files that should be deleted but have another checksum as at import-time.
130 * @param filesInUse a return value. The files that should be deleted but are in use by other modules.
131 * @param resourcesForProject a return value. The files that should be copied to a project to delete.
132 */
133 public void deleteGetConflictingFileNames(
134 String modulename,
135 Vector filesWithProperty,
136 Vector missingFiles,
137 Vector wrongChecksum,
138 Vector filesInUse,
139 Vector resourcesForProject)
140 throws CmsException;
141
142 /**
143 * Deletes a module.<p>
144 *
145 * This method is synchronized, so only one module can be deleted at a time.
146 *
147 * @param module the name of the module to be deleted
148 * @param exclusion a Vector with resource names that should be excluded from this deletion
149 * @param replaceMode if <code>true</code> this is for module replacement, so no dependencies will be checked
150 * @param report a report for the output
151 *
152 * @throws CmsException in case of an error during deletion
153 */
154 public void deleteModule(String module, Vector exclusion, boolean replaceMode, I_CmsReport report) throws CmsException;
155
156 /**
157 * Deletes the view for a module.
158 *
159 * @param String the name of the module.
160 */
161 public void deleteModuleView(String modulename) throws CmsException;
162
163 /**
164 * This method exports a module to the filesystem.
165 *
166 * @param moduleName the name of the module to be exported.
167 * @param String[] an array of resources to be exported.
168 * @param fileName the name of the file to write the export to.
169 */
170 public void exportModule(String moduleName, String[] resources, String fileName, I_CmsReport report)
171 throws CmsException;
172
173 /**
174 * This method returns the author of the module.
175 *
176 * @param String the name of the module.
177 * @return java.lang.String the author of the module.
178 */
179 public String getModuleAuthor(String modulename);
180
181 /**
182 * This method returns the email of author of the module.
183 *
184 * @param String the name of the module.
185 * @return java.lang.String the email of author of the module.
186 */
187 public String getModuleAuthorEmail(String modulename);
188
189 /**
190 * Gets the create date of the module.
191 *
192 * @param String the name of the module.
193 * @return long the create date of the module.
194 */
195 public long getModuleCreateDate(String modulname);
196
197 /**
198 * Returns the module dependencies for the module.
199 *
200 * @param module String the name of the module to check.
201 * @param modules Vector in this parameter the names of the dependend modules will be returned.
202 * @param minVersions Vector in this parameter the minimum versions of the dependend modules will be returned.
203 * @param maxVersions Vector in this parameter the maximum versions of the dependend modules will be returned.
204 * @return int the amount of dependencies for the module will be returned.
205 */
206 public int getModuleDependencies(String modulename, Vector modules, Vector minVersions, Vector maxVersions);
207
208 /**
209 * Returns the description of the module.
210 *
211 * @param String the name of the module.
212 * @return java.lang.String the description of the module.
213 */
214 public String getModuleDescription(String module);
215
216 /**
217 * Gets the url to the documentation of the module.
218 *
219 * @param String the name of the module.
220 * @return java.lang.String the url to the documentation of the module.
221 */
222 public String getModuleDocumentPath(String modulename);
223
224 /**
225 * Returns all filenames and hashcodes belonging to the module.
226 *
227 * @param String modulname the name of the module.
228 * @param retNames the names of the resources belonging to the module.
229 * @param retCodes the hashcodes of the resources belonging to the module.
230 * @return the amount of entrys.
231 */
232 public int getModuleFiles(String modulename, Vector retNames, Vector retCodes);
233
234 /**
235 * Returns the class, that receives all maintenance-events for the module.
236 *
237 * @param String the name of the module.
238 * @return java.lang.Class that receives all maintenance-events for the module.
239 */
240 public Class getModuleMaintenanceEventClass(String modulname);
241
242 /**
243 * Returns the name of the class, that receives all maintenance-events for the module.
244 *
245 * @param String the name of the module.
246 * @return java.lang.Class that receives all maintenance-events for the module.
247 */
248 public String getModuleMaintenanceEventName(String modulname);
249
250 /**
251 * Returns the names of all available modules.
252 *
253 * @return String[] the names of all available modules.
254 */
255 public Enumeration getModuleNames();
256
257 /**
258 * Gets the nice name of the module.
259 *
260 * @param String the name of the module.
261 * @return String the nice name of the module.
262 */
263 public String getModuleNiceName(String module);
264
265 /**
266 * Gets a parameter for a module.
267 *
268 * @param modulename java.lang.String the name of the module.
269 * @param parameter java.lang.String the name of the parameter to set.
270 * @return value java.lang.String the value to set for the parameter.
271 */
272 public String getModuleParameter(String modulename, String parameter);
273
274 /**
275 * Returns a parameter for a module.
276 *
277 * @param modulname String the name of the module.
278 * @param parameter String the name of the parameter.
279 * @return boolean the value for the parameter in the module.
280 */
281 public boolean getModuleParameterBoolean(String modulname, String parameter);
282
283 /**
284 * Returns a parameter for a module.
285 *
286 * @param modulname String the name of the module.
287 * @param parameter String the name of the parameter.
288 * @param default the default value.
289 * @return boolean the value for the parameter in the module.
290 */
291 public Boolean getModuleParameterBoolean(String modulname, String parameter, Boolean defaultValue);
292
293 /**
294 * Returns a parameter for a module.
295 *
296 * @param modulname String the name of the module.
297 * @param parameter String the name of the parameter.
298 * @param default the default value.
299 * @return boolean the value for the parameter in the module.
300 */
301 public boolean getModuleParameterBoolean(String modulname, String parameter, boolean defaultValue);
302
303 /**
304 * Returns a parameter for a module.
305 *
306 * @param modulname String the name of the module.
307 * @param parameter String the name of the parameter.
308 * @param default the default value.
309 * @return boolean the value for the parameter in the module.
310 */
311 byte getModuleParameterByte(String modulname, String parameter);
312
313 /**
314 * Returns a parameter for a module.
315 *
316 * @param modulname String the name of the module.
317 * @param parameter String the name of the parameter.
318 * @param default the default value.
319 * @return boolean the value for the parameter in the module.
320 */
321 public byte getModuleParameterByte(String modulname, String parameter, byte defaultValue);
322
323 /**
324 * Returns a parameter for a module.
325 *
326 * @param modulname String the name of the module.
327 * @param parameter String the name of the parameter.
328 * @param default the default value.
329 * @return boolean the value for the parameter in the module.
330 */
331 public Byte getModuleParameterByte(String modulname, String parameter, Byte defaultValue);
332
333 /**
334 * Returns a description for parameter in a module.
335 *
336 * @param modulname String the name of the module.
337 * @param parameter String the name of the parameter.
338 * @return String the description for the parameter in the module.
339 */
340 public String getModuleParameterDescription(String modulname, String parameter);
341
342 /**
343 * Returns a parameter for a module.
344 *
345 * @param modulname String the name of the module.
346 * @param parameter String the name of the parameter.
347 * @return boolean the value for the parameter in the module.
348 */
349 public double getModuleParameterDouble(String modulname, String parameter);
350
351 /**
352 * Returns a parameter for a module.
353 *
354 * @param modulname String the name of the module.
355 * @param parameter String the name of the parameter.
356 * @param default the default value.
357 * @return boolean the value for the parameter in the module.
358 */
359 public double getModuleParameterDouble(String modulname, String parameter, double defaultValue);
360
361 /**
362 * Returns a parameter for a module.
363 *
364 * @param modulname String the name of the module.
365 * @param parameter String the name of the parameter.
366 * @param default the default value.
367 * @return boolean the value for the parameter in the module.
368 */
369 public Double getModuleParameterDouble(String modulname, String parameter, Double defaultValue);
370
371 /**
372 * Returns a parameter for a module.
373 *
374 * @param modulname String the name of the module.
375 * @param parameter String the name of the parameter.
376 * @param default the default value.
377 * @return boolean the value for the parameter in the module.
378 */
379 public float getModuleParameterFloat(String modulname, String parameter);
380
381 /**
382 * Returns a parameter for a module.
383 *
384 * @param modulname String the name of the module.
385 * @param parameter String the name of the parameter.
386 * @param default the default value.
387 * @return boolean the value for the parameter in the module.
388 */
389 public float getModuleParameterFloat(String modulname, String parameter, float defaultValue);
390
391 /**
392 * Returns a parameter for a module.
393 *
394 * @param modulname String the name of the module.
395 * @param parameter String the name of the parameter.
396 * @param default the default value.
397 * @return boolean the value for the parameter in the module.
398 */
399 public Float getModuleParameterFloat(String modulname, String parameter, Float defaultValue);
400
401 /**
402 * Returns a parameter for a module.
403 *
404 * @param modulname String the name of the module.
405 * @param parameter String the name of the parameter.
406 * @return boolean the value for the parameter in the module.
407 */
408 public int getModuleParameterInteger(String modulname, String parameter);
409
410 /**
411 * Returns a parameter for a module.
412 *
413 * @param modulname String the name of the module.
414 * @param parameter String the name of the parameter.
415 * @param default the default value.
416 * @return boolean the value for the parameter in the module.
417 */
418 public int getModuleParameterInteger(String modulname, String parameter, int defaultValue);
419
420 /**
421 * Returns a parameter for a module.
422 *
423 * @param modulname String the name of the module.
424 * @param parameter String the name of the parameter.
425 * @param default the default value.
426 * @return boolean the value for the parameter in the module.
427 */
428 public Integer getModuleParameterInteger(String modulname, String parameter, Integer defaultValue);
429
430 /**
431 * Returns a parameter for a module.
432 *
433 * @param modulname String the name of the module.
434 * @param parameter String the name of the parameter.
435 * @param default the default value.
436 * @return boolean the value for the parameter in the module.
437 */
438 public long getModuleParameterLong(String modulname, String parameter);
439
440 /**
441 * Returns a parameter for a module.
442 *
443 * @param modulname String the name of the module.
444 * @param parameter String the name of the parameter.
445 * @param default the default value.
446 * @return boolean the value for the parameter in the module.
447 */
448 public long getModuleParameterLong(String modulname, String parameter, long defaultValue);
449
450 /**
451 * Returns a parameter for a module.
452 *
453 * @param modulname String the name of the module.
454 * @param parameter String the name of the parameter.
455 * @param default the default value.
456 * @return boolean the value for the parameter in the module.
457 */
458 public Long getModuleParameterLong(String modulname, String parameter, Long defaultValue);
459 /**
460 * Gets all parameter-names for a module.
461 *
462 * @param modulename String the name of the module.
463 * @return value String[] the names of the parameters for a module.
464 */
465 public String[] getModuleParameterNames(String modulename);
466
467 /**
468 * Returns a parameter for a module.
469 *
470 * @param modulname String the name of the module.
471 * @param parameter String the name of the parameter.
472 * @return boolean the value for the parameter in the module.
473 */
474 public String getModuleParameterString(String modulname, String parameter);
475
476 /**
477 * Returns a parameter for a module.
478 *
479 * @param modulname String the name of the module.
480 * @param parameter String the name of the parameter.
481 * @param default the default value.
482 * @return boolean the value for the parameter in the module.
483 */
484 public String getModuleParameterString(String modulname, String parameter, String defaultValue);
485
486 /**
487 * This method returns the type of a parameter in a module.
488 *
489 * @param modulename the name of the module.
490 * @param parameter the name of the parameter.
491 * @return the type of the parameter.
492 */
493 public String getModuleParameterType(String modulename, String parameter);
494
495 /**
496 * Returns all repositories for a module.
497 *
498 * @param String modulname the name of the module.
499 * @return java.lang.String[] the reprositories of a module.
500 */
501 public String[] getModuleRepositories(String modulename);
502
503 /**
504 * Returns the upload-date for the module.
505 *
506 * @param String the name of the module.
507 * @return java.lang.String the upload-date for the module.
508 */
509 public long getModuleUploadDate(String modulename);
510
511 /**
512 * Returns the user-name of the user who had uploaded the module.
513 *
514 * @param String the name of the module.
515 * @return java.lang.String the user-name of the user who had uploaded the module.
516 */
517 public String getModuleUploadedBy(String module);
518
519
520 /**
521 * This method returns the version of the module.
522 *
523 * @param String the name of the module.
524 * @return java.lang.String the version of the module.
525 */
526 public float getModuleVersion(String modulename);
527
528 /**
529 * Returns the name of the view, that is implemented by the module.
530 *
531 * @param String the name of the module.
532 * @return java.lang.String the name of the view, that is implemented by the module.
533 */
534 public String getModuleViewName(String modulename);
535
536 /**
537 * Returns the url to the view-url for the module within the system.
538 *
539 * @param String the name of the module.
540 * @return java.lang.String the view-url to the module.
541 */
542 public String getModuleViewUrl(String modulename);
543
544
545 /**
546 * Returns all lifecycle classes for all modules.
547 *
548 * @param Vector classes in this parameter the classes will be returned.
549 * @return int the amount of classes.
550 */
551 public int getModuleLifeCycle(Vector classes);
552
553
554 /**
555 * Returns the name of the class, that contains the publish method of the module.
556 *
557 * @param String the name of the module.
558 * @return java.lang.Class that contains the publish method of the module.
559 */
560 public String getModulePublishClass(String modulname);
561
562 /**
563 * Returns all publishable classes for all modules.
564 *
565 * @param Vector classes in this parameter the classess will be returned.
566 * @param String requiredMethod The value of the methodTag for the different
567 * methods useable after publish.
568 * null means the standard publish method
569 * "linkpublish" means the method that needs the changed links as parameter (i.e. search)
570 * @return int the amount of classess.
571 */
572 public int getModulePublishables(Vector classes, String requiredMethod);
573
574 /**
575 * Returns all exportable classes for all modules.
576 *
577 * @param Hashtable classes in this parameter the classes will be returned.
578 * @return int the amount of classes.
579 */
580 public int getModuleExportables(Hashtable classes);
581
582 /**
583 * Returns all repositories for all modules.
584 *
585 * @return java.lang.String[] the reprositories of all modules.
586 */
587 public String[] getRepositories();
588
589 /**
590 * Returns all Resourcetypes and korresponding parameter for System and all modules.
591 *
592 * @param Vector names in this parameter the names of the Resourcetypes will be returned.
593 * @param Vector launcherTypes in this parameters the launcherType will be returned(int).
594 * @param Vector launcherClass in this parameters the launcherClass will be returned.
595 * @param Vector resourceClass in this parameters the resourceClass will be returned.
596 * @return int the amount of resourcetypes.
597 */
598 public int getResourceTypes(Vector names, Vector launcherTypes, Vector launcherClass, Vector resourceClass);
599
600 /**
601 * Returns a value for a system-key.
602 * E.g. <code><system><mailserver>mail.server.com</mailserver></system></code>
603 * can be requested via <code>getSystemValue("mailserver");</code> and returns "mail.server.com.
604 *
605 * @param String the key of the system-value.
606 * @return the value for that system-key.
607 */
608 public String getSystemValue(String key);
609
610 /**
611 * Returns a vector of value for a system-key.
612 *
613 * @param String the key of the system-value.
614 * @return the values for that system-key.
615 */
616 public Hashtable getSystemValues(String key);
617
618 /**
619 * Return the XML "system" node Element from the registry for further
620 * processing in another class.
621 * @return the system node.
622 */
623 public org.w3c.dom.Element getSystemElement();
624
625 /**
626 * Returns all views and korresponding urls for all modules.
627 *
628 * @param String[] views in this parameter the views will be returned.
629 * @param String[] urls in this parameters the urls vor the views will be returned.
630 * @return int the amount of views.
631 */
632 public int getViews(Vector views, Vector urls);
633
634 /**
635 * Checks the dependencies for a new or replaced module.<p>
636 *
637 * @param moduleZip the name of the zipfile for the new module.
638 * @param replaceMode if <code>true</code> this is for module replacement,
639 * if <code>false</code> it is form module deletion
640 * @return a Vector with dependencies that are not fullfilled.
641 */
642 public Vector importCheckDependencies(String moduleZip, boolean replaceMode) throws CmsException;
643
644 /**
645 * Checks for files that already exist in the system but should be replaced by the module.
646 *
647 * @param moduleZip The name of the zip-file to import.
648 * @return The complete paths to the resources that have conflicts.
649 */
650 public Vector importGetConflictingFileNames(String moduleZip) throws CmsException;
651
652 /**
653 * Returns the name of the module to be imported.
654 *
655 * @param moduleZip the name of the zip-file to import from.
656 * @return The name of the module to be imported.
657 */
658 public Map importGetModuleInfo(String moduleZip);
659
660 /**
661 * Returns all files that are needed to create a project for the module-import.
662 *
663 * @param moduleZip The name of the zip-file to import.
664 * @return The complete paths for resources that should be in the import-project.
665 */
666 public Vector importGetResourcesForProject(String moduleZip) throws CmsException;
667
668 /**
669 * Imports a module. This method is synchronized, so only one module can be imported at on time.
670 *
671 * @param moduleZip the name of the zip-file to import from.
672 * @param exclusion a Vector with resource-names that should be excluded from this import.
673 */
674 public void importModule(String moduleZip, Vector exclusion, I_CmsReport report) throws CmsException;
675
676 /**
677 * Checks if the module exists already in the repository.
678 *
679 * @param String the name of the module.
680 * @return true if the module exists, else false.
681 */
682 public boolean moduleExists(String modulename);
683
684 /**
685 * This method sets the author of the module.
686 *
687 * @param String the name of the module.
688 * @param String the name of the author.
689 */
690 public void setModuleAuthor(String modulename, String author) throws CmsException;
691
692 /**
693 * This method sets the email of author of the module.
694 *
695 * @param String the name of the module.
696 * @param String the email of author of the module.
697 */
698 public void setModuleAuthorEmail(String modulename, String email) throws CmsException;
699
700 /**
701 * Sets the create date of the module.
702 *
703 * @param String the name of the module.
704 * @param long the create date of the module.
705 */
706 public void setModuleCreateDate(String modulname, long createdate) throws CmsException;
707
708 /**
709 * Sets the create date of the module.
710 *
711 * @param String the name of the module.
712 * @param String the create date of the module. Format: mm.dd.yyyy
713 */
714 public void setModuleCreateDate(String modulname, String createdate) throws CmsException;
715
716 /**
717 * Sets the module dependencies for the module.
718 *
719 * @param module String the name of the module to check.
720 * @param modules Vector in this parameter the names of the dependend modules will be returned.
721 * @param minVersions Vector in this parameter the minimum versions of the dependend modules will be returned.
722 * @param maxVersions Vector in this parameter the maximum versions of the dependend modules will be returned.
723 */
724 public void setModuleDependencies(String modulename, Vector modules, Vector minVersions, Vector maxVersions)
725 throws CmsException;
726
727 /**
728 * Sets the description of the module.
729 *
730 * @param String the name of the module.
731 * @param String the description of the module.
732 */
733 public void setModuleDescription(String module, String description) throws CmsException;
734
735 /**
736 * Sets the url to the documentation of the module.
737 *
738 * @param String the name of the module.
739 * @param java.lang.String the url to the documentation of the module.
740 */
741 public void setModuleDocumentPath(String modulename, String url) throws CmsException;
742
743 /**
744 * Sets the classname, that receives all maintenance-events for the module.
745 *
746 * @param String the name of the module.
747 * @param java.lang.Class that receives all maintenance-events for the module.
748 */
749 public void setModuleMaintenanceEventClass(String modulname, String classname) throws CmsException;
750
751
752 /**
753 * Sets the classname, that contains the publish method of the module.
754 *
755 * @param String the name of the module.
756 * @param String the name of the class that contains the publish method of the module.
757 */
758 public void setModulePublishClass(String modulname, String classname) throws CmsException;
759
760 /**
761 * Sets the description of the module.
762 *
763 * @param String the name of the module.
764 * @param String the nice name of the module.
765 */
766 public void setModuleNiceName(String module, String nicename) throws CmsException;
767
768 /**
769 * Sets a parameter for a module.
770 *
771 * @param modulename java.lang.String the name of the module.
772 * @param parameter java.lang.String the name of the parameter to set.
773 * @param the value to set for the parameter.
774 */
775 public void setModuleParameter(String modulename, String parameter, byte value) throws CmsException;
776
777 /**
778 * Sets a parameter for a module.
779 *
780 * @param modulename java.lang.String the name of the module.
781 * @param parameter java.lang.String the name of the parameter to set.
782 * @param the value to set for the parameter.
783 */
784 public void setModuleParameter(String modulename, String parameter, double value) throws CmsException;
785
786 /**
787 * Sets a parameter for a module.
788 *
789 * @param modulename java.lang.String the name of the module.
790 * @param parameter java.lang.String the name of the parameter to set.
791 * @param the value to set for the parameter.
792 */
793 public void setModuleParameter(String modulename, String parameter, float value) throws CmsException;
794
795 /**
796 * Sets a parameter for a module.
797 *
798 * @param modulename java.lang.String the name of the module.
799 * @param parameter java.lang.String the name of the parameter to set.
800 * @param the value to set for the parameter.
801 */
802 public void setModuleParameter(String modulename, String parameter, int value) throws CmsException;
803
804 /**
805 * Sets a parameter for a module.
806 *
807 * @param modulename java.lang.String the name of the module.
808 * @param parameter java.lang.String the name of the parameter to set.
809 * @param the value to set for the parameter.
810 */
811 public void setModuleParameter(String modulename, String parameter, long value) throws CmsException;
812
813 /**
814 * Sets a parameter for a module.
815 *
816 * @param modulename java.lang.String the name of the module.
817 * @param parameter java.lang.String the name of the parameter to set.
818 * @param the value to set for the parameter.
819 */
820 public void setModuleParameter(String modulename, String parameter, Boolean value) throws CmsException;
821
822 /**
823 * Sets a parameter for a module.
824 *
825 * @param modulename java.lang.String the name of the module.
826 * @param parameter java.lang.String the name of the parameter to set.
827 * @param the value to set for the parameter.
828 */
829 public void setModuleParameter(String modulename, String parameter, Byte value) throws CmsException;
830
831 /**
832 * Sets a parameter for a module.
833 *
834 * @param modulename java.lang.String the name of the module.
835 * @param parameter java.lang.String the name of the parameter to set.
836 * @param the value to set for the parameter.
837 */
838 public void setModuleParameter(String modulename, String parameter, Double value) throws CmsException;
839
840 /**
841 * Sets a parameter for a module.
842 *
843 * @param modulename java.lang.String the name of the module.
844 * @param parameter java.lang.String the name of the parameter to set.
845 * @param the value to set for the parameter.
846 */
847 public void setModuleParameter(String modulename, String parameter, Float value) throws CmsException;
848
849 /**
850 * Sets a parameter for a module.
851 *
852 * @param modulename java.lang.String the name of the module.
853 * @param parameter java.lang.String the name of the parameter to set.
854 * @param the value to set for the parameter.
855 */
856 public void setModuleParameter(String modulename, String parameter, Integer value) throws CmsException;
857
858 /**
859 * Sets a parameter for a module.
860 *
861 * @param modulename java.lang.String the name of the module.
862 * @param parameter java.lang.String the name of the parameter to set.
863 * @param the value to set for the parameter.
864 */
865 public void setModuleParameter(String modulename, String parameter, Long value) throws CmsException;
866
867 /**
868 * Sets a parameter for a module.
869 *
870 * @param modulename java.lang.String the name of the module.
871 * @param parameter java.lang.String the name of the parameter to set.
872 * @param value java.lang.String the value to set for the parameter.
873 */
874 public void setModuleParameter(String modulename, String parameter, String value) throws CmsException;
875
876 /**
877 * Sets a parameter for a module.
878 *
879 * @param modulename java.lang.String the name of the module.
880 * @param parameter java.lang.String the name of the parameter to set.
881 * @param the value to set for the parameter.
882 */
883 public void setModuleParameter(String modulename, String parameter, boolean value) throws CmsException;
884
885 /**
886 * Sets the module dependencies for the module.
887 *
888 * @param module String the name of the module to check.
889 * @param names Vector with parameternames
890 * @param descriptions Vector with parameterdescriptions
891 * @param types Vector with parametertypes (string, float,...)
892 * @param values Vector with defaultvalues for parameters
893 */
894 public void setModuleParameterdef(
895 String modulename,
896 Vector names,
897 Vector descriptions,
898 Vector types,
899 Vector values)
900 throws CmsException;
901
902 /**
903 * Sets all repositories for a module.
904 *
905 * @param String modulname the name of the module.
906 * @param String[] the reprositories of a module.
907 */
908 public void setModuleRepositories(String modulename, String[] repositories) throws CmsException;
909
910 /**
911 * This method sets the version of the module.
912 *
913 * @param modulename the name of the module.
914 * @param version the version of the module.
915 */
916 public void setModuleVersion(String modulename, String version) throws CmsException;
917
918 /**
919 * Sets a view for a module
920 *
921 * @param String the name of the module.
922 * @param String the name of the view, that is implemented by the module.
923 * @param String the url of the view, that is implemented by the module.
924 */
925 public void setModuleView(String modulename, String viewname, String viewurl) throws CmsException;
926
927 /**
928 * Public method to set system values.
929 *
930 * @param String dataName the name of the tag to set the data for.
931 * @param String the value to be set.
932 */
933 public void setSystemValue(String dataName, String value) throws CmsException;
934
935 /**
936 * Public method to set system values with hashtable.
937 *
938 * @param String dataName the name of the tag to set the data for.
939 * @param Hashtable the value to be set.
940 */
941 public void setSystemValues(String dataName, Hashtable values) throws CmsException;
942
943 /**
944 * Returns all exportpoints and paths.
945 *
946 *
947 * @return Hashtable The exportpoints and the paths.
948 */
949 public Hashtable getExportpoints();
950
951 /**
952 * Returns the value of the "type" node of a module subtree in the registry.
953 * @return the value of the "type" node of a module
954 */
955 public String getModuleType(String theModulename);
956
957 /**
958 * Sets the type for a given module.
959 * @param theModuleName the name of the module
960 * @param theModuleType the new type of the module
961 */
962 public void setModuleType(String theModulename, String theModuleType);
963 }