Re: WOGenericContainer convert elementName to lowercase automatically
Re: WOGenericContainer convert elementName to lowercase automatically
- Subject: Re: WOGenericContainer convert elementName to lowercase automatically
- From: "Yung-Luen Lan" <email@hidden>
- Date: Sat, 26 Apr 2008 01:05:16 +0800
On Sat, Apr 26, 2008 at 12:48 AM, Yung-Luen Lan <email@hidden> wrote:
> package your.app;
>
> import com.webobjects.appserver.*;
> import com.webobjects.appserver._private.WODynamicElementCreationException;
> import com.webobjects.foundation.*;
>
> public class MyGenericContainer extends WODynamicElement {
> protected NSDictionary<String, WOAssociation> extraBindings = null;
> protected WOAssociation elementName;
> protected WOElement children;
>
> public MyGenericContainer(String n, NSDictionary<String,
> WOAssociation> m, WOElement t) {
> super(n, m, t);
> elementName = m.objectForKey("elementName");
> if (elementName == null) {
> throw new WODynamicElementCreationException("Need elementName.");
> }
>
> if (m.count() > 1) {
> NSMutableDictionary<String, WOAssociation> tempBindings =
> m.mutableClone();
> tempBindings.removeObjectForKey("elementName");
> extraBindings = tempBindings.immutableClone();
> }
> children = t;
> }
>
> public void appendToResponse(WOResponse r, WOContext c) {
> r.appendContentString("<" + elementName.valueInComponent(c.component()));
> if (extraBindings != null) {
> NSArray<String> allKeys = extraBindings.allKeys();
> for (String k : allKeys) {
> WOAssociation binding = extraBindings.objectForKey(k);
> r.appendContentString(" " + k + "=\"" +
> binding.valueInComponent(c.component()).toString() + "\"");
> }
> }
> r.appendContentString(">");
Forgot to add this line:
if (children != null)
> children.appendToResponse(r, c);
> r.appendContentString("</" +
> elementName.valueInComponent(c.component()) + ">");
> }
> }
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden