01: /**
02: * Copyright 2006 Webmedia Group Ltd.
03: *
04: * Licensed under the Apache License, Version 2.0 (the "License");
05: * you may not use this file except in compliance with the License.
06: * You may obtain a copy of the License at
07: *
08: * http://www.apache.org/licenses/LICENSE-2.0
09: *
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: **/package org.araneaframework.example.main.message;
16:
17: import org.araneaframework.Component;
18: import org.araneaframework.InputData;
19: import org.araneaframework.Message;
20: import org.araneaframework.OutputData;
21: import org.araneaframework.core.BroadcastMessage;
22: import org.araneaframework.core.SeriesMessage;
23: import org.araneaframework.example.main.web.menu.MenuWidget;
24: import org.araneaframework.example.main.web.person.PersonAddEditWidget;
25: import org.araneaframework.framework.MountContext.MessageFactory;
26:
27: public class ExamplePersonMountMessageFactory implements MessageFactory {
28: public Message buildMessage(String url, final String suffix,
29: InputData input, OutputData output) {
30: return new SeriesMessage(new Message[] { new LoginMessage(),
31: new BroadcastMessage() {
32: protected void execute(Component component)
33: throws Exception {
34: if (component instanceof MenuWidget) {
35: ((MenuWidget) component)
36: .start(new PersonAddEditWidget(
37: new Long(suffix)));
38: }
39: }
40: } });
41: }
42:
43: }
|