src/share/jaxws_classes/com/oracle/webservices/internal/api/databinding/WSDLResolver.java

Tue, 09 Apr 2013 14:51:13 +0100

author
alanb
date
Tue, 09 Apr 2013 14:51:13 +0100
changeset 368
0989ad8c0860
child 374
72e03566f0a6
permissions
-rw-r--r--

8010393: Update JAX-WS RI to 2.2.9-b12941
Reviewed-by: alanb, erikj
Contributed-by: miroslav.kos@oracle.com, martin.grebac@oracle.com

alanb@368 1 /*
alanb@368 2 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
alanb@368 3 *
alanb@368 4 * Copyright (c) 2012 Oracle and/or its affiliates. All rights reserved.
alanb@368 5 *
alanb@368 6 * The contents of this file are subject to the terms of either the GNU
alanb@368 7 * General Public License Version 2 only ("GPL") or the Common Development
alanb@368 8 * and Distribution License("CDDL") (collectively, the "License"). You
alanb@368 9 * may not use this file except in compliance with the License. You can
alanb@368 10 * obtain a copy of the License at
alanb@368 11 * http://glassfish.java.net/public/CDDL+GPL_1_1.html
alanb@368 12 * or packager/legal/LICENSE.txt. See the License for the specific
alanb@368 13 * language governing permissions and limitations under the License.
alanb@368 14 *
alanb@368 15 * When distributing the software, include this License Header Notice in each
alanb@368 16 * file and include the License file at packager/legal/LICENSE.txt.
alanb@368 17 *
alanb@368 18 * GPL Classpath Exception:
alanb@368 19 * Oracle designates this particular file as subject to the "Classpath"
alanb@368 20 * exception as provided by Oracle in the GPL Version 2 section of the License
alanb@368 21 * file that accompanied this code.
alanb@368 22 *
alanb@368 23 * Modifications:
alanb@368 24 * If applicable, add the following below the License Header, with the fields
alanb@368 25 * enclosed by brackets [] replaced by your own identifying information:
alanb@368 26 * "Portions Copyright [year] [name of copyright owner]"
alanb@368 27 *
alanb@368 28 * Contributor(s):
alanb@368 29 * If you wish your version of this file to be governed by only the CDDL or
alanb@368 30 * only the GPL Version 2, indicate your decision by adding "[Contributor]
alanb@368 31 * elects to include this software in this distribution under the [CDDL or GPL
alanb@368 32 * Version 2] license." If you don't indicate a single choice of license, a
alanb@368 33 * recipient has the option to distribute your version of this file under
alanb@368 34 * either the CDDL, the GPL Version 2 or to extend the choice of license to
alanb@368 35 * its licensees as provided above. However, if you add GPL Version 2 code
alanb@368 36 * and therefore, elected the GPL Version 2 license, then the option applies
alanb@368 37 * only if the new code is made subject to such option by the copyright
alanb@368 38 * holder.
alanb@368 39 */
alanb@368 40
alanb@368 41 package com.oracle.webservices.internal.api.databinding;
alanb@368 42
alanb@368 43 import javax.xml.transform.Result;
alanb@368 44 import javax.xml.ws.Holder;
alanb@368 45
alanb@368 46 /**
alanb@368 47 * WSDLResolver is used by WSDLGenerator while generating WSDL and its associated
alanb@368 48 * documents. It is used to control what documents need to be generated and what
alanb@368 49 * documents need to be picked from metadata. If endpont's document metadata
alanb@368 50 * already contains some documents, their systemids may be used for wsdl:import,
alanb@368 51 * and schema:import. The suggested filenames are relative urls(for e.g: EchoSchema1.xsd)
alanb@368 52 * The Result object systemids are also relative urls(for e.g: AbsWsdl.wsdl).
alanb@368 53 *
alanb@368 54 * @author Jitendra Kotamraju
alanb@368 55 */
alanb@368 56 public interface WSDLResolver {
alanb@368 57 /**
alanb@368 58 * Create a Result object into which concrete WSDL is to be generated.
alanb@368 59 *
alanb@368 60 * @return Result for the concrete WSDL
alanb@368 61 */
alanb@368 62 public Result getWSDL(String suggestedFilename);
alanb@368 63
alanb@368 64 /**
alanb@368 65 * Create a Result object into which abstract WSDL is to be generated. If the the
alanb@368 66 * abstract WSDL is already in metadata, it is not generated.
alanb@368 67 *
alanb@368 68 * Update filename if the suggested filename need to be changed in wsdl:import.
alanb@368 69 * This needs to be done if the metadata contains abstract WSDL, and that systemid
alanb@368 70 * needs to be reflected in concrete WSDL's wsdl:import
alanb@368 71 *
alanb@368 72 * @return null if abstract WSDL need not be generated
alanb@368 73 */
alanb@368 74 public Result getAbstractWSDL(Holder<String> filename);
alanb@368 75
alanb@368 76 /**
alanb@368 77 * Create a Result object into which schema doc is to be generated. Typically if
alanb@368 78 * there is a schema doc for namespace in metadata, then it is not generated.
alanb@368 79 *
alanb@368 80 * Update filename if the suggested filename need to be changed in xsd:import. This
alanb@368 81 * needs to be done if the metadata contains the document, and that systemid
alanb@368 82 * needs to be reflected in some other document's xsd:import
alanb@368 83 *
alanb@368 84 * @return null if schema need not be generated
alanb@368 85 */
alanb@368 86 public Result getSchemaOutput(String namespace, Holder<String> filename);
alanb@368 87
alanb@368 88 }

mercurial