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

📄 saveservice.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:   SaveService.java

package org.huihoo.openweb.uddiserver.publish;

import java.io.IOException;
import java.io.PrintStream;
import java.sql.*;
import java.util.Enumeration;
import java.util.Vector;
import org.huihoo.openweb.uddi.*;
import org.huihoo.openweb.uddiserver.util.JavaUUIDGenerator;
import org.huihoo.openweb.uddiserver.util.SqlConnection;
import org.huihoo.openweb.uddiserver.util.validate_values;

// Referenced classes of package org.huihoo.openweb.uddiserver.publish:
//            Authority, SaveBinding, SaveCategory

public class SaveService
{

    Connection con;
    String userkey;

    public String getuserkey()
    {
        return userkey;
    }

    public void setuserkey(String a)
    {
        userkey = a;
    }

    public SaveService(Connection c)
    {
        con = c;
    }

    public UddiObject save(Save_Service ss)
        throws SQLException, UDDIXmlException, ClassNotFoundException, IOException
    {
        System.out.println("Save_Service: begin");
        AuthInfo authinfo = ss.getAuthInfo();
        setuserkey(authinfo.getValue());
        DispositionReport dr = new DispositionReport();
        ServiceDetail serviceDetail = new ServiceDetail();
        System.out.println("Save_Service:authinfo" + authinfo.getValue());
        if(authinfo == null || authinfo.getValue() == null || authinfo.getValue().equals(""))
        {
            Result result = Result.getResult(10120, "No auth token given");
            dr.setResult(result);
            return dr;
        }
        System.out.println("Save_Service: before save");
        Enumeration enum = ss.getBusinessService();
        //2005-10-13
		boolean isValid=validate_values.performValidValues(enum); 
		if(!isValid){
			Result result = Result.getResult(20210, "keyValue provided is not valid ");
			dr.setResult(result);
			return dr;
		}
        
        System.out.println("Save_Service: getBusinessService");
        enum = ss.getBusinessService();
        System.out.println("service size: "+enum.hasMoreElements());
        while(enum.hasMoreElements()) 
        {
            BusinessService businessService = (BusinessService)enum.nextElement();
            UddiObject obj = null;
            System.out.println("Save_Service before try");
            try
            {
                obj = save(authinfo, businessService);
                System.out.println("Save_Service: save tow parameter");
                BusinessService bt = (BusinessService)obj;
                serviceDetail.setBusinessService(bt);
                System.out.println("Save_Service: save setBusinessService");
            }
            catch(ClassCastException e)
            {
                System.out.println("WRONG!");
                return obj;
            }
        }
        return serviceDetail;
    }

    public UddiObject save(AuthInfo aInfo, BusinessService bService)
        throws SQLException, UDDIXmlException, ClassNotFoundException, IOException
    {
        DispositionReport dr = new DispositionReport();
        String bKey = bService.getBusinessKey();
        String userid = SqlConnection.getUserIdfromBusinessKey(bKey);
        String authinfo = aInfo.getValue();

        if(!SqlConnection.isPresent("BusinessDetails", "businesskey", bKey))
        {
            Result result = Result.getResult(10210, "businesskey not present: " + bKey);
            dr.setResult(result);
            return dr;
        }

        if(!SqlConnection.isPresent("authentiTokens", "keys", authinfo))
        {
            Result result = Result.getResult(10120, "Auth token is not valid");
            dr.setResult(result);
            return dr;
        }

        if(!Authority.isAuthorised(userid, authinfo))
        {
            Result result = Result.getResult(10140, "This user does not control this service");
            dr.setResult(result);
            return dr;
        } else
        {
            return save(bService);
        }
    }

    public UddiObject save(BusinessService bService)
        throws SQLException, UDDIXmlException, ClassNotFoundException
    {
		//调用validate_values
		//sky加,2005-10-4
		DispositionReport dr = new DispositionReport();

        System.out.println("save BusinessService:begin");
        ServiceDetail returnValue = new ServiceDetail();
        Statement stmt = con.createStatement();
        System.out.println("save BusinessService:next1");
        String bKey = bService.getBusinessKey();
        Enumeration enum = bService.getServiceName();
        System.out.println("save BusinessService:next2");
        String serviceName;
        System.out.println("service name: ");
        for(serviceName = ""; enum.hasMoreElements(); serviceName = ((UddiObject)enum.nextElement()).getValue());
        System.out.println("save BusinessService:description");
        enum = bService.getDescription();
        System.out.println("save BusinessService:next3");
        String description = "";
        for(Enumeration enum1 = bService.getDescription(); enum1.hasMoreElements();)
            description = ((UddiObject)enum1.nextElement()).getValue();
        System.out.println("save BusinessService:next4");
        String serviceKey = bService.getServiceKey();
        String query = null;
        boolean isPresent = false;
        boolean isGenerated = false;
        ServiceKey genServiceKey = new ServiceKey();
        System.out.println("save BusinessService:servicekey " + serviceKey);
        if(serviceKey == null || serviceKey.equals(""))
        {
            isGenerated = true;
            serviceKey = JavaUUIDGenerator.uuidgen();
            genServiceKey.setValue(serviceKey);
            bService.setServiceKey(genServiceKey);
        } else
        {
            DispositionReport dr1 = new DispositionReport();
            query = "SELECT * from BusinessService where servicekey = '" + serviceKey + "'";
            ResultSet rs = stmt.executeQuery(query);
            Vector b = new Vector();
            if(rs.next())
                b.add(rs.getString("businesskey"));
            rs.close();
            stmt.close();
            Enumeration a = b.elements();
            String bk = null;
            String userid_1 = null;
            String userid_2 = null;
            while(a.hasMoreElements()) 
            {
                bk = (String)a.nextElement();
                System.out.println(bk);
                Statement stmt11 = con.createStatement();
                String query1 = "select * from businessdetails where businesskey='" + bk + "'";
                ResultSet rs11 = stmt11.executeQuery(query1);
                System.out.println("save BusinessService: statement11");
                if(rs11.next())
                    userid_1 = rs11.getString("userid");
                System.out.println("save BusinessService : 1111111111111111");
                rs11.close();
                stmt11.close();
                String query3 = "select * from authentitokens where keys='" + getuserkey() + "'";
                System.out.println(query3);
                Statement stmt12 = con.createStatement();
                System.out.println("save BusinessService statement12");
                ResultSet rs12 = stmt12.executeQuery(query3);
                System.out.println("save BusinessService: 44444444444444444444");
                if(rs12.next())
                {
                    System.out.println("before get userid_2");
                    userid_2 = rs12.getString("userid");
                    System.out.println(userid_2);
                }
                System.out.println("save BusinessService: 5555555555555555555555555");
                rs12.close();
                stmt12.close();
                if(!userid_1.equals(userid_2))
                {
                    Result result = Result.getResult(10120, "Auth token is not valid");
                    dr1.setResult(result);
                    return dr1;
                }
                isPresent = true;
            }
        }
        System.out.println("save BusinessService: 0000000000000000000");
        Statement stmt8 = con.createStatement();
        if(isPresent)
            query = "UPDATE BusinessService set businessKey = '" + bKey + "', servicename = '" + serviceName + "', description = '" + description + "'WHERE servicekey = '" + serviceKey + "'";
        else
            query = "INSERT into BusinessService values('" + serviceKey + "','" + bKey + "','" + serviceName + "','" + description + "')";
        stmt8.executeUpdate(query);
        BindingTemplates bTemplates = null;
        if(bService.getBindingTemplates() != null)
            bTemplates = bService.getBindingTemplates();
        System.out.println("save BusinessService: 111111111111111111");
        Enumeration bTemplateEnum = bTemplates.getBindingTemplate();
        SaveBinding saveB = new SaveBinding(con);
        System.out.println("save BusinessService: 2222222222222222222");
        for(; bTemplateEnum.hasMoreElements(); System.out.println("save BusinessService after save bTemplate"))
        {
            System.out.println("77777777777777777777777");
            BindingTemplate bTemplate = (BindingTemplate)bTemplateEnum.nextElement();
            System.out.println("8888888888888888888888888");
            if(isGenerated)
                bTemplate.setServiceKey(genServiceKey);
            else
                bTemplate.setServiceKey(new ServiceKey(serviceKey));
            System.out.println("save BusinessService before save bTemplate");
            saveB.save(bTemplate);
        }

        System.out.println("save BusinessService: 3333333333333333333333");
        Enumeration catBagEnum = null;
        if(bService.getCategoryBag() != null)
        {
            catBagEnum = bService.getEnumCategoryBag();
            System.out.println("99999999999999999999999999999999");
            SaveCategory sc;
            for(; catBagEnum.hasMoreElements(); sc.save())
            {
                CategoryBag cBag = (CategoryBag)catBagEnum.nextElement();
                System.out.println("101010101010101010101010110");
                sc = new SaveCategory(cBag, con, serviceKey);
            }

        }
        stmt8.close();
        returnValue.setBusinessService(bService);
        System.out.println("end");
        return returnValue;
    }
}

⌨️ 快捷键说明

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