00001
00025 package org.objectweb.jonas_lib.deployment.rules;
00026
00027 import javax.xml.namespace.QName;
00028
00029 import org.objectweb.jonas_lib.deployment.xml.Qname;
00030
00031
00036 public class AnonymousQNameRule extends QNameRule {
00037
00051 public void body(String namespace, String name, String text) {
00052
00053
00054 if (text == null) {
00055 throw new IllegalArgumentException("No QName found in the body of the tag " + name);
00056 }
00057
00058
00059 int colonIndex = text.lastIndexOf(":");
00060 if (colonIndex == -1) {
00061 throw new IllegalArgumentException("QName must be on the form namespace:localpart for element " + name);
00062 }
00063 String namespaceURI = text.substring(0, colonIndex);
00064 String localPart = text.substring(colonIndex + 1, text.length());
00065
00066
00067 QName qName = new QName(namespaceURI, localPart);
00068
00069
00070 Qname qNameObject = (Qname) digester.peek();
00071 qNameObject.setName(name);
00072 qNameObject.setQName(qName);
00073
00074 }
00075
00076 }