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

📄 patternstrategy.java

📁 一个java 代码生成器
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
                    xmlBuffer.append(commandStruct.toXml());
                    processor.process(xmlBuffer.toString(), "patterns.xsl", commandStruct.getReceiverName() + ".java", commandStruct.getPackageDir());
                    xmlBuffer = null;
                    //For Concrete Commands
                    Vector commandNames = commandStruct.getCommands();
                    for (int k = 0; k < commandNames.size(); k++) {
                        String commandName = (String) commandNames.elementAt(k);
                        xmlBuffer = new StringBuffer();
                        xmlBuffer.append(xmlEpilog.toString());
                        xmlBuffer.append("<pattern-class>commands</pattern-class>");
                        xmlBuffer.append("<c-name>" + commandName + "</c-name>");
                        xmlBuffer.append(commandStruct.toXml());
                        processor.process(xmlBuffer.toString(), "patterns.xsl", commandName + ".java", commandStruct.getPackageDir());
                        xmlBuffer = null;
                    }
                } else if (patternStructs.elementAt(i) instanceof com.jenerator.struct.pattern.VisitorStruct) {
                    log.debug("Generating Visitor Pattern");
                    StringBuffer xmlEpilog = new StringBuffer();
                    xmlEpilog.append("<?xml version='1.0'?>");
                    xmlEpilog.append("<pattern type=\"Visitor\">");
                    VisitorStruct visitorStruct = (VisitorStruct) patternStructs.elementAt(i);
                    //For Abstract Visitor
                    StringBuffer xmlBuffer = new StringBuffer();
                    xmlBuffer.append(xmlEpilog.toString());
                    xmlBuffer.append("<pattern-class>abstract-visitor</pattern-class>");
                    xmlBuffer.append(visitorStruct.toXml());
                    processor.process(xmlBuffer.toString(), "patterns.xsl", visitorStruct.getAbstractVisitorName() + ".java", visitorStruct.getPackageDir());
                    xmlBuffer = null;
                    //For Concrete Visitors
                    Vector visitorNames = visitorStruct.getConcreteVisitors();
                    for (int k = 0; k < visitorNames.size(); k++) {
                        String visitorName = (String) visitorNames.elementAt(k);
                        xmlBuffer = new StringBuffer();
                        xmlBuffer.append(xmlEpilog.toString());
                        xmlBuffer.append("<pattern-class>concrete-visitor</pattern-class>");
                        xmlBuffer.append("<v-name>" + visitorName + "</v-name>");
                        xmlBuffer.append(visitorStruct.toXml());
                        processor.process(xmlBuffer.toString(), "patterns.xsl", visitorName + ".java", visitorStruct.getPackageDir());
                        xmlBuffer = null;
                    }
                    //For Abstract Element
                    xmlBuffer = new StringBuffer();
                    xmlBuffer.append(xmlEpilog.toString());
                    xmlBuffer.append("<pattern-class>abstract-element</pattern-class>");
                    xmlBuffer.append(visitorStruct.toXml());
                    processor.process(xmlBuffer.toString(), "patterns.xsl", visitorStruct.getAbstractElementName() + ".java", visitorStruct.getPackageDir());
                    xmlBuffer = null;
                    //For Concrete Elements
                    Hashtable concreteElements = visitorStruct.getConcreteElements();
                    if (!concreteElements.isEmpty()) {
                        Enumeration keys = concreteElements.keys();
                        while (keys.hasMoreElements()) {
                            String concreteElementName = keys.nextElement().toString();
                            String operationName = concreteElements.get(concreteElementName).toString();
                            xmlBuffer = new StringBuffer();
                            xmlBuffer.append(xmlEpilog.toString());
                            xmlBuffer.append("<pattern-class>concrete-element</pattern-class>");
                            xmlBuffer.append("<e-name>" + concreteElementName + "</e-name>");
                            xmlBuffer.append("<op-name>" + operationName + "</op-name>");
                            xmlBuffer.append(visitorStruct.toXml());
                            processor.process(xmlBuffer.toString(), "patterns.xsl", concreteElementName + ".java", visitorStruct.getPackageDir());
                            xmlBuffer = null;
                        }

                    }


                } else if (patternStructs.elementAt(i) instanceof com.jenerator.struct.pattern.EjbHomeFactoryStruct) {
                    log.debug("Generating EjbHomeFactory Pattern");
                    StringBuffer xmlEpilog = new StringBuffer();
                    xmlEpilog.append("<?xml version='1.0'?>");
                    xmlEpilog.append("<pattern type=\"EjbHomeFactory\">");
                    EjbHomeFactoryStruct ejbHomeFactoryStruct = (EjbHomeFactoryStruct) patternStructs.elementAt(i);
                    StringBuffer xmlBuffer = new StringBuffer();
                    xmlBuffer.append(xmlEpilog.toString());
                    xmlBuffer.append("<pattern-class>EjbHomeFactory</pattern-class>");
                    xmlBuffer.append(ejbHomeFactoryStruct.toXml());
                    processor.process(xmlBuffer.toString(), "ejb-patterns.xsl", ejbHomeFactoryStruct.getName() + ".java", ejbHomeFactoryStruct.getPackageDir());
                    xmlBuffer = null;
                    xmlBuffer = new StringBuffer();
                    xmlBuffer.append(xmlEpilog.toString());
                    xmlBuffer.append("<pattern-class>HomeFactoryException</pattern-class>");
                    xmlBuffer.append(ejbHomeFactoryStruct.toXml());
                    processor.process(xmlBuffer.toString(), "ejb-patterns.xsl", "HomeFactoryException" + ".java", ejbHomeFactoryStruct.getPackageDir());
                    xmlBuffer = null;


                } else if (patternStructs.elementAt(i) instanceof com.jenerator.struct.pattern.ServiceLocatorStruct) {
                    log.debug("Generating ServiceLocator Pattern");
                    StringBuffer xmlEpilog = new StringBuffer();
                    xmlEpilog.append("<?xml version='1.0'?>");
                    xmlEpilog.append("<pattern type=\"ServiceLocator\">");
                    ServiceLocatorStruct serviceLocatorStruct = (ServiceLocatorStruct) patternStructs.elementAt(i);
                    StringBuffer xmlBuffer = new StringBuffer();
                    xmlBuffer.append(xmlEpilog.toString());
                    xmlBuffer.append("<pattern-class>ServiceLocator</pattern-class>");
                    xmlBuffer.append(serviceLocatorStruct.toXml());
                    processor.process(xmlBuffer.toString(), "ejb-patterns.xsl", serviceLocatorStruct.getName() + ".java", serviceLocatorStruct.getPackageDir());
                    xmlBuffer = null;
                    xmlBuffer = new StringBuffer();
                    xmlBuffer.append(xmlEpilog.toString());
                    xmlBuffer.append("<pattern-class>ServiceLocatorException</pattern-class>");
                    xmlBuffer.append(serviceLocatorStruct.toXml());
                    processor.process(xmlBuffer.toString(), "ejb-patterns.xsl", "ServiceLocatorException" + ".java", serviceLocatorStruct.getPackageDir());
                    xmlBuffer = null;

                } else if (patternStructs.elementAt(i) instanceof com.jenerator.struct.pattern.ValueListHandlerStruct) {
                    log.debug("Generating ValueListHandler Pattern");
                    StringBuffer xmlEpilog = new StringBuffer();
                    xmlEpilog.append("<?xml version='1.0'?>");
                    xmlEpilog.append("<pattern type=\"ValueListHandler\">");
                    ValueListHandlerStruct valueListHandlerStruct = (ValueListHandlerStruct) patternStructs.elementAt(i);
                    StringBuffer xmlBuffer = new StringBuffer();
                    xmlBuffer.append(xmlEpilog.toString());
                    xmlBuffer.append("<pattern-class>ValueListHandler</pattern-class>");
                    xmlBuffer.append(valueListHandlerStruct.toXml());
                    processor.process(xmlBuffer.toString(), "ejb-patterns.xsl", valueListHandlerStruct.getName() + ".java", valueListHandlerStruct.getPackageDir());
                    xmlBuffer = null;
                    xmlBuffer = new StringBuffer();
                    xmlBuffer.append(xmlEpilog.toString());
                    xmlBuffer.append("<pattern-class>ValueListIterator</pattern-class>");
                    xmlBuffer.append(valueListHandlerStruct.toXml());
                    processor.process(xmlBuffer.toString(), "ejb-patterns.xsl", "ValueListIterator" + ".java", valueListHandlerStruct.getPackageDir());
                    xmlBuffer = null;
                    xmlBuffer = new StringBuffer();
                    xmlBuffer.append(xmlEpilog.toString());
                    xmlBuffer.append("<pattern-class>IteratorException</pattern-class>");
                    xmlBuffer.append(valueListHandlerStruct.toXml());
                    processor.process(xmlBuffer.toString(), "ejb-patterns.xsl", "IteratorException" + ".java", valueListHandlerStruct.getPackageDir());
                    xmlBuffer = null;
                } else if (patternStructs.elementAt(i) instanceof com.jenerator.struct.pattern.GenericAttributeAccessStruct) {

                    log.debug("Generating GenericAttributeAccessStruct Pattern");
                    GenericAttributeAccessStruct genAttAssStruct = (GenericAttributeAccessStruct) patternStructs.elementAt(i);
                    processor.process(genAttAssStruct.toXml(), "ejb-patterns.xsl", genAttAssStruct.getName() + ".java", genAttAssStruct.getPackageDir());
                }


            }

        } catch (NotProcessableException ex) {
            log.fatal(ex);
            throw new TransformFailedException(ex);
        }

    }
}

⌨️ 快捷键说明

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