⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 findtmodel.java

📁 OpenWeb-UDDI是UDDI V2标准的实现
💻 JAVA
字号:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi 
// Source File Name:   FindTModel.java

package org.huihoo.openweb.uddiserver.inquiry;

import java.io.*;
import java.sql.*;
import java.util.Enumeration;
import org.huihoo.openweb.uddi.*;

public class FindTModel
{

    Connection con;
    Find_TModel doc;

    public FindTModel(Find_TModel doc, Connection c)
    {
        this.doc = doc;
        con = c;
    }

    public UddiObject getData()
        throws SQLException, IOException, UDDIXmlException, ClassNotFoundException
    {
        String str = "";
        String name = doc.getTModelName();
        if(name != null && name.length() > 46)
        {
            Result result = Result.getResult(10020, "partial name value passed exceeds the maximum name length of the name field as specified in the UDDI data structure reference.");
            return errorOccured(result);
        }
        FindQualifiers qualifiers = doc.getQualifiers();
        if(qualifiers != null)
        {
            Enumeration qualifier = qualifiers.getQualifier();
            boolean value = CheckQualifiers.check(qualifier);
            if(!value)
            {
                Result result = Result.getResult(10050, "The findQualifier value " + CheckQualifiers.qualifiervalue + " was invalid ");
                return errorOccured(result);
            }
        }
        IdentifierBag identifierbag = doc.getIdentifierBag();
        CategoryBag categorybag = doc.getCategoryBag();
        if(identifierbag == null && categorybag == null && name == null)
        {
            Result result = Result.getResult(10050, "E_unsupported (10050) Feature or API not supported. No search criteria was specified in the message");
            return errorOccured(result);
        }
        String tmodelkeys_ident = "";
        if(identifierbag != null)
        {
            for(Enumeration keyedreference = identifierbag.getKeyedReference(); keyedreference.hasMoreElements();)
            {
                KeyedReference kr = (KeyedReference)keyedreference.nextElement();
                String keyname = kr.getKeyName();
                String keyvalue = kr.getKeyValue();
                String query = "select key from IdentifierBag where keyname='" + keyname + "' and  keyvalue='" + keyvalue + "'";
                Statement stmt = con.createStatement();
                for(ResultSet rs = stmt.executeQuery(query); rs.next();)
                    if(tmodelkeys_ident.length() > 0)
                        tmodelkeys_ident = tmodelkeys_ident + "," + "'" + rs.getString("key") + "'";
                    else
                        tmodelkeys_ident = "'" + rs.getString("key") + "'";

            }

        }
        String tmodel_catbag = "";
        if(categorybag != null)
        {
            for(Enumeration keyedref = categorybag.getKeyedReference(); keyedref.hasMoreElements();)
            {
                int check = 0;
                KeyedReference kr = (KeyedReference)keyedref.nextElement();
                String keyname = kr.getKeyName();
                String keyvalue = kr.getKeyValue();
                TModelKey key = kr.getTModelKey();
                String tmodelkey = key.getValue();
                String query = "select keys from CategoryBag where keyname='" + keyname + "' and  keyvalue='" + keyvalue + "' and tmodelkey='" + tmodelkey + "'";
                Statement stmt = con.createStatement();
                for(ResultSet rs = stmt.executeQuery(query); rs.next();){
                    if(tmodel_catbag.length() > 0)
                        tmodel_catbag = tmodel_catbag + "," + "'" + rs.getString("keys") + "'";
                    else
                        tmodel_catbag = "'" + rs.getString("keys") + "'";
                    check++;
                }

                if(check == 0)
                {
                    tmodel_catbag = "";
                    break;
                }
            }

        }
        String Tmodelkeys_toSearch = "";
        if(tmodelkeys_ident.length() > 0)
            Tmodelkeys_toSearch = Tmodelkeys_toSearch + tmodelkeys_ident;
        if(tmodel_catbag.length() > 0 && Tmodelkeys_toSearch.length() > 0)
            Tmodelkeys_toSearch = Tmodelkeys_toSearch + "," + tmodel_catbag;
        else
            Tmodelkeys_toSearch = Tmodelkeys_toSearch + tmodel_catbag;
        System.out.println(" check tmodel keys to search " + Tmodelkeys_toSearch);
        String detail = "<tModelList generic=\"1.0\" xmlns=\"urn:uddi-org:api\" operator=\"www.huihoo.com\" truncated=\"true\"></tModelList>";
        ByteArrayInputStream bas = new ByteArrayInputStream(detail.getBytes());
        TModelList tmodellist = new TModelList(bas);
        TModelInfos tmodelinfos = new TModelInfos();
        Statement stmt = con.createStatement();
        String query = "SELECT * FROM TModelDetails Where  keyname like '" + name + "%'";
        System.out.println(query);
        TModelInfo tmodelinfo;
        for(ResultSet rs = stmt.executeQuery(query); rs.next(); tmodelinfos.addElement(tmodelinfo))
        {
            String tmodelkey = rs.getString("tmodelkey");
            tmodelinfo = new TModelInfo(tmodelkey);
            String tmodelname = rs.getString("keyname");
            UddiObject obj = new UddiObject("name");
            obj.setValue(tmodelname);
            tmodelinfo.addElement(obj);
            System.out.println(tmodelinfo);
        }

        if(Tmodelkeys_toSearch.length() > 0)
        {
            String query1 = "SELECT * FROM TModelDetails Where  tmodelkey in (" + Tmodelkeys_toSearch + ") and  keyname  NOT IN ('" + name + "')";
            System.out.println(query1);
            for(ResultSet rs1 = stmt.executeQuery(query1); rs1.next(); tmodelinfos.addElement(tmodelinfo))
            {
                String tmodelkey = rs1.getString("tmodelkey");
                tmodelinfo = new TModelInfo(tmodelkey);
                String tmodelname = rs1.getString("keyname");
                UddiObject obj = new UddiObject("name");
                obj.setValue(tmodelname);
                tmodelinfo.addElement(obj);
                System.out.println(tmodelinfo);
            }

        }
        tmodellist.addElement(tmodelinfos);
        System.out.println(tmodellist);
        return tmodellist;
    }

    public UddiObject errorOccured(Result result)
    {
        DispositionReport pr = new DispositionReport();
        pr.setResult(result);
        return pr;
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -