1 /* 2 * Copyright 2005-2010 the original author or authors. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 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 */ 16 17 package org.springframework.ws.server.endpoint.annotation; 18 19 import java.lang.annotation.Documented; 20 import java.lang.annotation.ElementType; 21 import java.lang.annotation.Retention; 22 import java.lang.annotation.RetentionPolicy; 23 import java.lang.annotation.Target; 24 import javax.xml.XMLConstants; 25 26 /** 27 * Sets up a namespace to be used in an {@link Endpoint @Endpoint} method, class, or package. 28 * <p/> 29 * Typically used in combination with {@link XPathParam @XPathParam}, or {@link PayloadRoot @PayloadRoot}. 30 * 31 * @author Arjen Poutsma 32 * @see XPathParam 33 * @see PayloadRoot 34 * @since 2.0 35 */ 36 @Documented 37 @Retention(RetentionPolicy.RUNTIME) 38 @Target({ElementType.PACKAGE, ElementType.TYPE, ElementType.METHOD}) 39 public @interface Namespace { 40 41 /** 42 * Signifies the prefix of the namespace. 43 * 44 * @see #uri() 45 */ 46 String prefix() default XMLConstants.DEFAULT_NS_PREFIX; 47 48 /** 49 * Signifies the URI of the namespace. 50 * 51 * @see #prefix() 52 */ 53 String uri(); 54 55 }