📄 remotestrategy.java
字号:
/**
* Copyright (c) 2002, Siddhartha P. Chandurkar siddhartha@visioncodified.com
* All rights reserved.
* Licensed under the Academic Free License version 1.1
* See the file LICENSE.TXT for details.
* LICENSE.txt is located in the directory <install-directory>\Jenerator
* of your Jenertaor Installation.
*
*/
package com.jenerator.transformer;
//<Imports>
//Java Imports
import com.jenerator.regen.ExtracterException;
import com.jenerator.regen.ReplacerException;
import com.jenerator.struct.ConfigStructs;
import com.jenerator.struct.ejb.EntityStruct;
import com.jenerator.struct.ejb.SessionStruct;
import com.jenerator.util.Configurator;
import org.apache.log4j.Logger;
import java.io.File;
import java.util.Vector;
//</Imports>
/**
* RemoteStrategy
* This strategy implements the logic to generate Remote interfaces for all types of beans
* It is based on the strategy pattern
* @see TransformStrategy
* @author Siddhartha P. Chandurkar
* @version 0.9.0
*
*/
public class RemoteStrategy extends TransformStrategy {
//ATTRIBUTES
private static Logger log = Logger.getLogger(com.jenerator.transformer.RemoteStrategy.class.getName());
//METHODS
/**
* This method overides the super class <code>transform()</code> method
*
*/
public void transform() throws TransformFailedException {
try {
ConfigStructs configStructs = Configurator.getInstance().getConfigStructs();
Vector ejbStructs = configStructs.getEjbStructs();
for (int i = 0; i < ejbStructs.size(); i++) {
if (ejbStructs.elementAt(i) instanceof com.jenerator.struct.ejb.EntityStruct) {
EntityStruct entityStruct = (EntityStruct) ejbStructs.elementAt(i);
File file = new File(genDir + entityStruct.getPackageDir(), entityStruct.getRemoteName() + ".java");
if (file.exists()) {
extract = extractManualCode(file);
log.debug(extract);
processor.process(entityStruct.toXml(), "entityremote.xsl", entityStruct.getRemoteName() + ".java", entityStruct.getPackageDir());
replaceManualCode(file, extract);
} else {
processor.process(entityStruct.toXml(), "entityremote.xsl", entityStruct.getRemoteName() + ".java", entityStruct.getPackageDir());
}
} else if (ejbStructs.elementAt(i) instanceof com.jenerator.struct.ejb.SessionStruct) {
SessionStruct sessionStruct = (SessionStruct) ejbStructs.elementAt(i);
File file = new File(genDir + sessionStruct.getPackageDir(), sessionStruct.getRemoteName() + ".java");
if (file.exists()) {
extract = extractManualCode(file);
log.debug(extract);
processor.process(sessionStruct.toXml(), "sessionremote.xsl", sessionStruct.getRemoteName() + ".java", sessionStruct.getPackageDir());
replaceManualCode(file, extract);
} else {
processor.process(sessionStruct.toXml(), "sessionremote.xsl", sessionStruct.getRemoteName() + ".java", sessionStruct.getPackageDir());
}
}
}
} catch (NotProcessableException ex) {
log.fatal(ex);
throw new TransformFailedException(ex);
} catch (ExtracterException e) {
throw new TransformFailedException(e);
} catch (ReplacerException e) {
throw new TransformFailedException(e);
}
//try
}//transform
}//RemoteStrategy
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -