01: //THIS SOFTWARE IS PROVIDED BY SOFTARIS PTY.LTD. AND OTHER METABOSS
02: //CONTRIBUTORS ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING,
03: //BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
04: //FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SOFTARIS PTY.LTD.
05: //OR OTHER METABOSS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
06: //INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
07: //LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
08: //OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
09: //LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
10: //NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
11: //EVEN IF SOFTARIS PTY.LTD. OR OTHER METABOSS CONTRIBUTORS ARE ADVISED OF THE
12: //POSSIBILITY OF SUCH DAMAGE.
13: //
14: //Copyright 2000-2005 © Softaris Pty.Ltd. All Rights Reserved.
15: package com.metaboss.applications.designstudio.userobjects;
16:
17: import com.metaboss.applications.designstudio.Application;
18: import com.metaboss.applications.designstudio.BasePropertiesDialog;
19: import com.metaboss.applications.designstudio.BaseUserObject;
20: import com.metaboss.applications.designstudio.propertiesdialogs.SimpleObjectPropertiesdialog;
21: import com.metaboss.sdlctools.models.metabossmodel.MetaBossModelPackage;
22: import com.metaboss.sdlctools.models.metabossmodel.enterprisemodel.systemusagemodel.AbstractNamespace;
23: import com.metaboss.sdlctools.models.metabossmodel.enterprisemodel.systemusagemodel.UseCase;
24: import com.metaboss.sdlctools.models.metabossmodel.enterprisemodel.systemusagemodel.UseCaseClass;
25:
26: /* Use cases user object */
27:
28: public class UseCaseUserObject extends BaseUserObject {
29: private UseCase mUseCase = null;
30:
31: public UseCaseUserObject(UseCase pUseCase) {
32: super (pUseCase, Application.USECASE_ICON);
33: mUseCase = pUseCase;
34: }
35:
36: public UseCaseUserObject(UseCase pUseCase, String pCaption,
37: int pMode) {
38: super (pUseCase, pCaption, pMode);
39: mUseCase = pUseCase;
40: }
41:
42: // create new namespace
43: public static UseCaseUserObject addNewUseCase(
44: AbstractNamespace pNamespace) throws Exception {
45: return (UseCaseUserObject) new UseCaseUserObject(null)
46: .addNewObject(getObjectPackage(pNamespace), pNamespace
47: .getUseCases());
48: }
49:
50: public BaseUserObject createNewObject(MetaBossModelPackage pPackage) {
51: UseCaseClass lClass = pPackage.getEnterpriseModel()
52: .getSystemUsageModel().getUseCase();
53: return new UseCaseUserObject(lClass.createUseCase());
54: }
55:
56: // return object root node captions
57: public String getRootNodeName() {
58: return Application.getString("usecases_node");
59: }
60:
61: public UseCase getUseCase() {
62: return mUseCase;
63: }
64:
65: // get object editor
66: public BasePropertiesDialog getObjectEditor() {
67: return new SimpleObjectPropertiesdialog("Use Case");
68: }
69: }
|