signature:
public class AbstractBWMojo { /** * This will read the dependencies from the ' resolved ' file found in the
 * build directory . This file was created earlier in the build by the
 * ' resolve - bw - dependencies ' execution of the ' process - resources ' phase .
 * @ return The list of dependencies of type { @ link dependencyType }
 * @ throws IOException */
protected List < Dependency > readDependenciesFromFile ( String resolvedFileName , String dependencyType ) throws IOException { } }

implementation:
List < Dependency > dependencies = new ArrayList < Dependency > ( ) ; File resolvedFile = new File ( resolvedFileName ) ; if ( ! resolvedFile . exists ( ) ) { return dependencies ; } FileInputStream fstream = new FileInputStream ( resolvedFile ) ; DataInputStream ds = new DataInputStream ( fstream ) ; BufferedReader br = new BufferedReader ( new InputStreamReader ( ds ) ) ; Pattern p = Pattern . compile ( "   (.*):(.*):" + dependencyType + ":(.*):(.*)" ) ; // keep only selected type ( projlib or jar or bw - ear ) dependencies
String strLine ; while ( ( strLine = br . readLine ( ) ) != null ) { Matcher m = p . matcher ( strLine ) ; if ( m . matches ( ) ) { getLog ( ) . debug ( m . group ( 0 ) ) ; String groupId = m . group ( 1 ) ; String artifactId = m . group ( 2 ) ; String version = m . group ( 3 ) ; String scope = m . group ( 4 ) ; // create the dependency
Dependency dependency = new Dependency ( ) ; dependency . setGroupId ( groupId ) ; dependency . setArtifactId ( artifactId ) ; dependency . setVersion ( version ) ; dependency . setType ( dependencyType ) ; dependency . setScope ( scope ) ; dependencies . add ( dependency ) ; } } br . close ( ) ; return dependencies ;


signature:
public class AbstractBWMojo { /** * This will retrieve only the dependencies of type dependencyType defined
 * in POM project as / dependencies / dependency / type = " dependencyType " .
 * The list is retrieved from an external file generated by the
 * ' resolve - bw - dependencies ' execution of the ' process - resources ' phase .
 * @ param dependencyType , the type of dependencies to retrieve
 * @ param doIgnoreDependencies , specifies if the dependencies in the
 * { @ link dependenciesIgnored } must be ignored
 * @ return
 * @ throws IOException */
protected List < Dependency > getDependencies ( String dependencyType , boolean doIgnoreDependencies ) throws IOException { } }

implementation: ArrayList < Dependency > result = new ArrayList < Dependency > ( ) ; List < Dependency > dependencies = readDependenciesFromFile ( directory + "/resolved" , dependencyType ) ; for ( Dependency dependency : dependencies ) { if ( doIgnoreDependencies ) { if ( dependenciesIgnored . indexOf ( dependency . getGroupId ( ) + ':' + dependency . getArtifactId ( ) ) >= 0 ) { continue ; } } if ( dependency . getType ( ) . equals ( dependencyType ) ) { result . add ( dependency ) ; } } return result ;


signature:
public class AbstractBWMojo { /** * This will create an aliases file ( ' aliases . properties ' ) that can be
 * provided to ' buildear ' for instance to specify the JAR aliases .
 * It seems that the JAR aliases are not recognized by ' buildear ' from
 * ' Designer5 . prefs ' whereas they are by TIBCO Designer .
 * @ throws IOException */
private void copyAliasesFile ( ) throws IOException { } }

implementation:
// Create the aliases . properties in the target folder
File aliasesFile = getAliasesFile ( ) ; FileWriter file = null ; BufferedWriter buffer = null ; PrintWriter aliasesFileOut = null ; try { file = new FileWriter ( aliasesFile ) ; buffer = new BufferedWriter ( file ) ; aliasesFileOut = new PrintWriter ( buffer ) ; // Copy all of the required aliases for the project , and map them with their path in Designer5 . prefs
for ( Dependency dependency : getJarDependencies ( ) ) { String jarName = getJarName ( dependency , false ) ; String jarAlias = formatAlias ( getJarAlias ( dependency , false ) ) ; String jarPath = getDependencyPath ( jarName ) ; if ( new File ( jarPath ) . exists ( ) ) { aliasesFileOut . println ( TIBCO_ALIAS_PREFIX + jarAlias + "=" + jarPath ) ; } } for ( Dependency dependency : getProjlibsDependencies ( ) ) { String projlibName = getProjlibName ( dependency ) ; String projlibAlias = formatAlias ( getProjlibAlias ( dependency ) ) ; String projlibPath = getDependencyPath ( projlibName ) ; aliasesFileOut . println ( TIBCO_ALIAS_PREFIX + projlibAlias + "=" + projlibPath ) ; } } finally { aliasesFileOut . close ( ) ; buffer . close ( ) ; file . close ( ) ; }


signature:
public class AbstractBWMojo { /** * This will create the ' Designer5 . prefs ' file in ' target / . TIBCO ' which will
 * override the platform TIBCO _ HOME directory .
 * The content of the ' Designer5 . prefs ' will be a copy of the original
 * ' Designer5 . prefs ' file found on the current system ( in the user home dir )
 * However all the references to alias files will be removed and replaced by
 * the actual alias files referencing Maven artifacts
 * @ throws IOException */
private void copyDesigner5Prefs ( ) throws IOException { } }

implementation:
File designer5Prefs = getDesigner5Prefs ( ) ; // copy system ' Designer5 . prefs ' to this " . TIBCO " directory
File systemDesigner5Prefs = new File ( System . getProperty ( "user.home" ) + "/" + TIBCO_HOME_DIR + "/" + DESIGNER5_PREFS ) ; getLog ( ) . debug ( DESIGNER5_PREFS + " : " + systemDesigner5Prefs . getAbsolutePath ( ) ) ; if ( systemDesigner5Prefs . exists ( ) ) { copyFile ( systemDesigner5Prefs , designer5Prefs ) ; } else { designer5Prefs . createNewFile ( ) ; } // remove file aliases
ReplaceRegExp replaceRegExp = new ReplaceRegExp ( ) ; replaceRegExp . setFile ( designer5Prefs ) ; replaceRegExp . setMatch ( FILE_ALIAS_PREFIX_ESCAPED + "([0-9]*)=(.*)" ) ; replaceRegExp . setReplace ( "" ) ; replaceRegExp . setByLine ( true ) ; replaceRegExp . execute ( ) ; // replace with actual file aliases ( which are Maven artifacts )
FileWriter file = null ; BufferedWriter buffer = null ; PrintWriter designer5PrefsOut = null ; try { file = new FileWriter ( designer5Prefs , true ) ; buffer = new BufferedWriter ( file ) ; designer5PrefsOut = new PrintWriter ( buffer ) ; designer5PrefsOut . println ( "" ) ; // first the Projlibs aliases
int i = 0 ; if ( ! hideLibraryResources ) { // implements the " Hide Library Resources " of TIBCO Designer
for ( Dependency dependency : getProjlibsDependencies ( ) ) { String projlibName = getProjlibName ( dependency ) ; String projlibAlias = getProjlibAlias ( dependency ) ; String projlibPath = getDependencyPath ( projlibName ) ; designer5PrefsOut . println ( FILE_ALIAS_PREFIX + ( i ++ ) + "=" + projlibAlias + "\\=" + projlibPath ) ; } } // then the Jar aliases
for ( Dependency dependency : getJarDependencies ( ) ) { String jarName = getJarName ( dependency , false ) ; String jarAlias = getJarAlias ( dependency , false ) ; String jarPath = getDependencyPath ( jarName ) ; // String jarNameUnderscored = getJarName ( dependency , true ) ;
designer5PrefsOut . println ( FILE_ALIAS_PREFIX + ( i ++ ) + "=" + jarAlias + "\\=" + jarPath ) ; } } finally { designer5PrefsOut . close ( ) ; buffer . close ( ) ; file . close ( ) ; }


signature:
public class AbstractBWMojo { /** * This will create the ' . designtimelibs ' file in { @ link buildSrcDirectory }
 * which is basically the path to the temporary BusinessWorks project being
 * built .
 * The content of the ' . designtimelibs ' will be the Projlib dependencies of
 * the project , defined in the POM project and resolved with classic Maven
 * mechanism .
 * @ throws IOException */
private void copyDesignTimeLibs ( ) throws IOException { } }

implementation:
File designTimeLibs = new File ( buildSrcDirectory + "/" + DTL_FILE_NAME ) ; getLog ( ) . debug ( DTL_FILE_NAME + " : " + buildSrcDirectory + "/" + DTL_FILE_NAME ) ; if ( ! designTimeLibs . exists ( ) ) { if ( buildSrcDirectory . exists ( ) ) { designTimeLibs . createNewFile ( ) ; } else { return ; } } FileWriter file = null ; BufferedWriter buffer = null ; PrintWriter designTimeLibsOut = null ; try { file = new FileWriter ( designTimeLibs , false ) ; buffer = new BufferedWriter ( file ) ; designTimeLibsOut = new PrintWriter ( buffer ) ; int i = getProjlibsDependencies ( ) . size ( ) ; if ( ! hideLibraryResources ) { for ( Dependency dependency : getProjlibsDependencies ( ) ) { // String projlibName = getProjlibName ( dependency ) ;
String projlibAlias = getProjlibAlias ( dependency ) ; designTimeLibsOut . println ( ( -- i ) + "=" + projlibAlias + "\\=" ) ; } } } finally { designTimeLibsOut . close ( ) ; buffer . close ( ) ; file . close ( ) ; }


signature:
public class AbstractBWMojo { /** * This calls a TIBCO binary .
 * @ param binary , the TIBCO binary file to execute
 * @ param tras , the TRA files associated with the TIBCO binary
 * @ param arguments , command - line arguments
 * @ param workingDir , working directory from where the binary is launched
 * @ param errorMsg , error message to display in case of a failure
 * @ param fork , if true the chiild process will be detached from the caller
 * @ throws IOException
 * @ throws MojoExecutionException */
protected int launchTIBCOBinary ( File binary , List < File > tras , ArrayList < String > arguments , File workingDir , String errorMsg , boolean fork , boolean synchronous ) throws IOException , MojoExecutionException { } }

implementation:
Integer result = 0 ; if ( tras == null ) { // no value specified as Mojo parameter , we use the . tra in the same directory as the binary
String traPathFileName = binary . getAbsolutePath ( ) ; traPathFileName = FilenameUtils . removeExtension ( traPathFileName ) ; traPathFileName += ".tra" ; tras = new ArrayList < File > ( ) ; tras . add ( new File ( traPathFileName ) ) ; } HashMap < File , File > trasMap = new HashMap < File , File > ( ) ; for ( File tra : tras ) { // copy of " . tra " file in the working directory
File tmpTRAFile = new File ( directory , tra . getName ( ) ) ; trasMap . put ( tra , tmpTRAFile ) ; copyFile ( tra , tmpTRAFile ) ; } for ( File tra : trasMap . keySet ( ) ) { if ( trasMap . containsKey ( tibcoDesignerTRAPath ) && ( ( tibcoBuildEARUseDesignerTRA && tra == tibcoBuildEARTRAPath ) || ( tibcoBuildLibraryUseDesignerTRA && tra == tibcoBuildLibraryTRAPath ) ) ) { if ( tras . size ( ) > 1 ) { ReplaceRegExp replaceRegExp = new ReplaceRegExp ( ) ; replaceRegExp . setFile ( trasMap . get ( tra ) ) ; replaceRegExp . setMatch ( "tibco.include.tra (.*/designer.tra)" ) ; replaceRegExp . setReplace ( "tibco.include.tra " + trasMap . get ( tibcoDesignerTRAPath ) . toString ( ) . replace ( '\\' , '/' ) ) ; replaceRegExp . setByLine ( true ) ; replaceRegExp . execute ( ) ; } } if ( tra == tibcoBuildEARTRAPath || tra == tibcoDesignerTRAPath || tra == tibcoBWEngineTRAPath ) { // FIXME : should check more properly
// append user . home at the end to force the use of custom Designer5 . prefs
PrintWriter out = new PrintWriter ( new BufferedWriter ( new FileWriter ( trasMap . get ( tra ) , true ) ) ) ; out . println ( "" ) ; out . println ( "java.property.user.home=" + directory . getAbsolutePath ( ) . replace ( "\\" , "/" ) ) ; out . close ( ) ; } } CommandLine cmdLine = new CommandLine ( binary ) ; for ( String argument : arguments ) { cmdLine . addArgument ( argument ) ; } getLog ( ) . debug ( "launchTIBCOBinary command line : " + cmdLine . toString ( ) ) ; getLog ( ) . debug ( "working dir : " + workingDir ) ; DefaultExecutor executor = new DefaultExecutor ( ) ; executor . setWorkingDirectory ( workingDir ) ; if ( timeOut > 0 ) { ExecuteWatchdog watchdog = new ExecuteWatchdog ( timeOut * 1000 ) ; executor . setWatchdog ( watchdog ) ; } executor . setProcessDestroyer ( new ShutdownHookProcessDestroyer ( ) ) ; ByteArrayOutputStream stdOutAndErr = new ByteArrayOutputStream ( ) ; executor . setStreamHandler ( new PumpStreamHandler ( stdOutAndErr ) ) ; if ( fork ) { CommandLauncher commandLauncher = CommandLauncherFactory . createVMLauncher ( ) ; commandLauncher . exec ( cmdLine , null , workingDir ) ; } else { try { if ( synchronous ) { result = executor . execute ( cmdLine ) ; } else { executor . execute ( cmdLine , new DefaultExecuteResultHandler ( ) ) ; } } catch ( ExecuteException e ) { // TODO : gérer erreurs des exécutables ( éventuellement parser les erreurs classiques )
getLog ( ) . info ( cmdLine . toString ( ) ) ; getLog ( ) . info ( stdOutAndErr . toString ( ) ) ; getLog ( ) . info ( result . toString ( ) ) ; throw new MojoExecutionException ( errorMsg , e ) ; } catch ( IOException e ) { throw new MojoExecutionException ( e . getMessage ( ) , e ) ; } } return result ;


signature:
public class AbstractBWMojo { /** * Same as launchTIBCOBinary with ' fork = false ' and ' synchronous = true ' */
protected void launchTIBCOBinary ( File binary , List < File > tras , ArrayList < String > arguments , File workingDir , String errorMsg ) throws IOException , MojoExecutionException { } }

implementation: launchTIBCOBinary ( binary , tras , arguments , workingDir , errorMsg , false , true ) ;


signature:
public class AbstractBWMojo { /** * The execute method of this Mojo will :
 * < ul >
 * < li > check that the BusinessWorks project exists < / li >
 * < li > copy the Designer5 . prefs file < / li >
 * < li > copy the . designtimelibs file useful for setting a TIBCO environment
 * for the project being built . < / li >
 * < / ul > */
public void execute ( ) throws MojoExecutionException { } }

implementation:
if ( dependenciesIgnored == null ) { dependenciesIgnored = new ArrayList < String > ( ) ; } if ( ! directory . exists ( ) ) { directory . mkdirs ( ) ; } checkBWProject ( ) ; try { copyAliasesFile ( ) ; copyDesigner5Prefs ( ) ; copyDesignTimeLibs ( ) ; } catch ( IOException e ) { e . printStackTrace ( ) ; // FIXME : remove printStackTrace ( )
}


signature:
public class Actions { /** * Gets the value of the action property .
 * This accessor method returns a reference to the live list ,
 * not a snapshot . Therefore any modification you make to the
 * returned list will be present inside the JAXB object .
 * This is why there is not a < CODE > set < / CODE > method for the action property .
 * For example , to add a new item , do as follows :
 * < pre >
 * getAction ( ) . add ( newItem ) ;
 * < / pre >
 * Objects of the following type ( s ) are allowed in the list
 * { @ link JAXBElement } { @ code < } { @ link AlertAction } { @ code > }
 * { @ link JAXBElement } { @ code < } { @ link ActionType } { @ code > }
 * { @ link JAXBElement } { @ code < } { @ link CustomAction } { @ code > }
 * { @ link JAXBElement } { @ code < } { @ link EmailAction } { @ code > } */
public List < JAXBElement < ? extends ActionType > > getAction ( ) { } }

implementation: if ( action == null ) { action = new ArrayList < JAXBElement < ? extends ActionType > > ( ) ; } return this . action ;


signature:
public class CompileEARMojo { /** * This calls the " buildear " binary found in TIBCO TRA to build an EAR for
 * the { @ link AbstractBWMojo # project } , defined by the { @ link CompileEARMojo # archiveFile } .
 * @ param outputFile
 * , the path where the EAR output will be created
 * @ throws MojoExecutionException
 * @ throws IOException */
private void buildEAR ( File outputFile ) throws MojoExecutionException , IOException { } }

implementation:
checkBuildEAR ( ) ; // assert ( outputFile ! = null ) ;
ArrayList < String > arguments = new ArrayList < String > ( ) ; arguments . add ( "-ear" ) ; // path of the Enterprise Archive " builder " relative to the BW project path
arguments . add ( archiveFile ) ; arguments . add ( "-p" ) ; // BW project path
arguments . add ( buildSrcDirectory . getAbsolutePath ( ) ) ; arguments . add ( "-o" ) ; // output file
arguments . add ( outputFile . getAbsolutePath ( ) ) ; arguments . add ( "-x" ) ; // overwrite the output
if ( tibcoBuildEARValidation ) { arguments . add ( "-v" ) ; // validate the project
} File aliasesFile = new File ( directory , ALIASES_FILE ) ; if ( aliasesFile . exists ( ) ) { arguments . add ( "-a" ) ; arguments . add ( aliasesFile . getAbsolutePath ( ) ) ; } getLog ( ) . info ( BUILDING_EAR ) ; ArrayList < File > tras = new ArrayList < File > ( ) ; tras . add ( tibcoBuildEARTRAPath ) ; if ( tibcoBuildEARUseDesignerTRA ) { tras . add ( tibcoDesignerTRAPath ) ; } launchTIBCOBinary ( tibcoBuildEARPath , tras , arguments , directory , BUILD_EAR_FAILED ) ;


signature:
public class CompileEARMojo { /** * Delete all file of a directory and then delete this directory
 * @ param directory
 * @ return */
protected boolean cleanDirectory ( File directory ) { } }

implementation: if ( directory . isDirectory ( ) && directory . listFiles ( ) . length != 0 ) { for ( File file : directory . listFiles ( ) ) { if ( file . isFile ( ) ) { file . delete ( ) ; } } } return directory . delete ( ) ;


signature:
public class SimpleType { /** * Gets the value of the final property .
 * This accessor method returns a reference to the live list ,
 * not a snapshot . Therefore any modification you make to the
 * returned list will be present inside the JAXB object .
 * This is why there is not a < CODE > set < / CODE > method for the final property .
 * For example , to add a new item , do as follows :
 * < pre >
 * getFinal ( ) . add ( newItem ) ;
 * < / pre >
 * Objects of the following type ( s ) are allowed in the list
 * { @ link String } */
public java . util . List < String > getFinal ( ) { } }

implementation: if ( _final == null ) { _final = new ArrayList < String > ( ) ; } return this . _final ;


signature:
public class ProcessModel { /** * This will initialize the { @ link ProcessDefinition } object which is a JAXB
 * representation of the " ProcessDefinition " root - element of TIBCO processes
 * files using the schema with " http : / / xmlns . tibco . com / bw / process / 2003"
 * namespace .
 * @ throws JAXBException */
private void initProcessModel ( ) throws JAXBException { } }

implementation: jaxbContext = JAXBContext . newInstance ( ObjectFactory . class ) ; Unmarshaller jaxbUnmarshaller = jaxbContext . createUnmarshaller ( ) ; Object o = jaxbUnmarshaller . unmarshal ( xmlFile ) ; this . process = ( ProcessDefinition ) o ;


signature:
public class ProcessModel { /** * This will marshall the object back to the XML file .
 * @ throws JAXBException */
public void save ( ) throws JAXBException { } }

implementation: Marshaller m = jaxbContext . createMarshaller ( ) ; m . setProperty ( Marshaller . JAXB_FORMATTED_OUTPUT , true ) ; m . marshal ( process , xmlFile ) ;


signature:
public class Rulebases { /** * Gets the value of the rulebase property .
 * This accessor method returns a reference to the live list ,
 * not a snapshot . Therefore any modification you make to the
 * returned list will be present inside the JAXB object .
 * This is why there is not a < CODE > set < / CODE > method for the rulebase property .
 * For example , to add a new item , do as follows :
 * < pre >
 * getRulebase ( ) . add ( newItem ) ;
 * < / pre >
 * Objects of the following type ( s ) are allowed in the list
 * { @ link Rulebases . Rulebase } */
public List < Rulebases . Rulebase > getRulebase ( ) { } }

implementation: if ( rulebase == null ) { rulebase = new ArrayList < Rulebases . Rulebase > ( ) ; } return this . rulebase ;


signature:
public class StartEARMojo { /** * This methods subscribe to the Hawk method
 * " COM . TIBCO . admin . TRA : getComponentInstanceStatus " for all
 * { @ code instances } being started .
 * @ param instances
 * @ return a list of { @ link MethodSubscriber } objects
 * @ throws ConsoleInitializationException
 * @ throws MicroAgentException */
private List < MethodSubscriber > monitorInstances ( List < ImmutablePair < String , String > > instances ) throws ConsoleInitializationException , MicroAgentException { } }

implementation: List < MethodSubscriber > result = new ArrayList < MethodSubscriber > ( ) ; microAgent = new MicroAgent ( hawkDomain , hawkRvService , hawkRvNetwork , hawkRvDaemon , "COM.TIBCO.admin.TRA" ) ; getLog ( ) . info ( "" ) ; getLog ( ) . info ( SUBSCRIBING_TO_HAWK_METHODS ) ; for ( ImmutablePair < String , String > instance : instances ) { MethodSubscriber ms = new MethodSubscriber ( microAgent ) ; ms . setMethodName ( "getComponentInstanceStatus" ) ; ms . setArguments ( instance . left , instance . right ) ; ms . setInterval ( hawkSubscribeInterval ) ; ms . setNumberOfRetry ( hawkSubscribeNumberOfRetry ) ; ms . subscribe ( new RunningInstanceSubscriptionHandler ( getLog ( ) , ms , numberOfRunningStatuses ) ) ; result . add ( ms ) ; } return result ;


signature:
public class RepositoryModel { /** * This will initialize the { @ link Repository } object which is a JAXB
 * representation of the " Repository " root - element of TIBCO " . aliaslib "
 * files using the schema with " http : / / www . tibco . com / xmlns / repo / types / 2002"
 * namespace .
 * @ throws JAXBException */
private void initRepositoryModel ( ) throws JAXBException { } }

implementation: jaxbContext = JAXBContext . newInstance ( ObjectFactory . class ) ; Unmarshaller jaxbUnmarshaller = jaxbContext . createUnmarshaller ( ) ; Object o = jaxbUnmarshaller . unmarshal ( xmlFile ) ; this . repository = ( Repository ) o ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link NameValuePairInteger } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/dd" , name = "NameValuePairInteger" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/dd" , substitutionHeadName = "NVPair" ) public JAXBElement < NameValuePairInteger > createNameValuePairInteger ( NameValuePairInteger value ) { } }

implementation: return new JAXBElement < NameValuePairInteger > ( _NameValuePairInteger_QNAME , NameValuePairInteger . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link DiffExcludeFilter } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/dd" , name = "DiffExcludeFilter" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/dd" , substitutionHeadName = "DeploymentDescriptor" ) public JAXBElement < DiffExcludeFilter > createDiffExcludeFilter ( DiffExcludeFilter value ) { } }

implementation: return new JAXBElement < DiffExcludeFilter > ( _DiffExcludeFilter_QNAME , DiffExcludeFilter . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link NameValuePairs } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/dd" , name = "NameValuePairs" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/dd" , substitutionHeadName = "DeploymentDescriptor" ) public JAXBElement < NameValuePairs > createNameValuePairs ( NameValuePairs value ) { } }

implementation: return new JAXBElement < NameValuePairs > ( _NameValuePairs_QNAME , NameValuePairs . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link ClassLoaderExtension } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/dd" , name = "ClassLoaderExtension" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/dd" , substitutionHeadName = "DeploymentDescriptor" ) public JAXBElement < ClassLoaderExtension > createClassLoaderExtension ( ClassLoaderExtension value ) { } }

implementation: return new JAXBElement < ClassLoaderExtension > ( _ClassLoaderExtension_QNAME , ClassLoaderExtension . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link DeploymentDescriptorType } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/dd" , name = "DeploymentDescriptor" ) public JAXBElement < DeploymentDescriptorType > createDeploymentDescriptor ( DeploymentDescriptorType value ) { } }

implementation: return new JAXBElement < DeploymentDescriptorType > ( _DeploymentDescriptor_QNAME , DeploymentDescriptorType . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link CustomTSMPlugInConfiguration } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/dd" , name = "CustomTSMPlugInConfiguration" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/dd" , substitutionHeadName = "DeploymentDescriptor" ) public JAXBElement < CustomTSMPlugInConfiguration > createCustomTSMPlugInConfiguration ( CustomTSMPlugInConfiguration value ) { } }

implementation: return new JAXBElement < CustomTSMPlugInConfiguration > ( _CustomTSMPlugInConfiguration_QNAME , CustomTSMPlugInConfiguration . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link NameValuePairBoolean } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/dd" , name = "NameValuePairBoolean" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/dd" , substitutionHeadName = "NVPair" ) public JAXBElement < NameValuePairBoolean > createNameValuePairBoolean ( NameValuePairBoolean value ) { } }

implementation: return new JAXBElement < NameValuePairBoolean > ( _NameValuePairBoolean_QNAME , NameValuePairBoolean . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link StartAsOneOf } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/dd" , name = "StartAsOneOf" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/dd" , substitutionHeadName = "DeploymentDescriptor" ) public JAXBElement < StartAsOneOf > createStartAsOneOf ( StartAsOneOf value ) { } }

implementation: return new JAXBElement < StartAsOneOf > ( _StartAsOneOf_QNAME , StartAsOneOf . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Modules } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/dd" , name = "Modules" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/dd" , substitutionHeadName = "DeploymentDescriptor" ) public JAXBElement < Modules > createModules ( Modules value ) { } }

implementation: return new JAXBElement < Modules > ( _Modules_QNAME , Modules . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link DeploymentDescriptorFactory } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/dd" , name = "DeploymentDescriptorFactory" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/dd" , substitutionHeadName = "DeploymentDescriptor" ) public JAXBElement < DeploymentDescriptorFactory > createDeploymentDescriptorFactory ( DeploymentDescriptorFactory value ) { } }

implementation: return new JAXBElement < DeploymentDescriptorFactory > ( _DeploymentDescriptorFactory_QNAME , DeploymentDescriptorFactory . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link SupportsFaultTolerance } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/dd" , name = "SupportsFaultTolerance" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/dd" , substitutionHeadName = "DeploymentDescriptor" ) public JAXBElement < SupportsFaultTolerance > createSupportsFaultTolerance ( SupportsFaultTolerance value ) { } }

implementation: return new JAXBElement < SupportsFaultTolerance > ( _SupportsFaultTolerance_QNAME , SupportsFaultTolerance . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link RequiredComponents } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/dd" , name = "RequiredComponents" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/dd" , substitutionHeadName = "DeploymentDescriptor" ) public JAXBElement < RequiredComponents > createRequiredComponents ( RequiredComponents value ) { } }

implementation: return new JAXBElement < RequiredComponents > ( _RequiredComponents_QNAME , RequiredComponents . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Facet } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "minInclusive" ) public JAXBElement < Facet > createMinInclusive ( Facet value ) { } }

implementation: return new JAXBElement < Facet > ( _MinInclusive_QNAME , Facet . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link NumFacet } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "maxLength" ) public JAXBElement < NumFacet > createMaxLength ( NumFacet value ) { } }

implementation: return new JAXBElement < NumFacet > ( _MaxLength_QNAME , NumFacet . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link ExplicitGroup } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "sequence" ) public JAXBElement < ExplicitGroup > createSequence ( ExplicitGroup value ) { } }

implementation: return new JAXBElement < ExplicitGroup > ( _Sequence_QNAME , ExplicitGroup . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link NumFacet } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "minLength" ) public JAXBElement < NumFacet > createMinLength ( NumFacet value ) { } }

implementation: return new JAXBElement < NumFacet > ( _MinLength_QNAME , NumFacet . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link NamedGroup } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "group" ) public JAXBElement < NamedGroup > createGroup ( NamedGroup value ) { } }

implementation: return new JAXBElement < NamedGroup > ( _Group_QNAME , NamedGroup . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link NamedAttributeGroup } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "attributeGroup" ) public JAXBElement < NamedAttributeGroup > createAttributeGroup ( NamedAttributeGroup value ) { } }

implementation: return new JAXBElement < NamedAttributeGroup > ( _AttributeGroup_QNAME , NamedAttributeGroup . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Keybase } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "key" ) public JAXBElement < Keybase > createKey ( Keybase value ) { } }

implementation: return new JAXBElement < Keybase > ( _Key_QNAME , Keybase . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link All } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "all" ) public JAXBElement < All > createAll ( All value ) { } }

implementation: return new JAXBElement < All > ( _All_QNAME , All . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link NumFacet } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "length" ) public JAXBElement < NumFacet > createLength ( NumFacet value ) { } }

implementation: return new JAXBElement < NumFacet > ( _Length_QNAME , NumFacet . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link TopLevelSimpleType } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "simpleType" ) public JAXBElement < TopLevelSimpleType > createSimpleType ( TopLevelSimpleType value ) { } }

implementation: return new JAXBElement < TopLevelSimpleType > ( _SimpleType_QNAME , TopLevelSimpleType . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link NoFixedFacet } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "enumeration" ) public JAXBElement < NoFixedFacet > createEnumeration ( NoFixedFacet value ) { } }

implementation: return new JAXBElement < NoFixedFacet > ( _Enumeration_QNAME , NoFixedFacet . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link ExplicitGroup } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "choice" ) public JAXBElement < ExplicitGroup > createChoice ( ExplicitGroup value ) { } }

implementation: return new JAXBElement < ExplicitGroup > ( _Choice_QNAME , ExplicitGroup . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link NumFacet } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "fractionDigits" ) public JAXBElement < NumFacet > createFractionDigits ( NumFacet value ) { } }

implementation: return new JAXBElement < NumFacet > ( _FractionDigits_QNAME , NumFacet . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Facet } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "minExclusive" ) public JAXBElement < Facet > createMinExclusive ( Facet value ) { } }

implementation: return new JAXBElement < Facet > ( _MinExclusive_QNAME , Facet . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Facet } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "maxExclusive" ) public JAXBElement < Facet > createMaxExclusive ( Facet value ) { } }

implementation: return new JAXBElement < Facet > ( _MaxExclusive_QNAME , Facet . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link TopLevelElement } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "element" ) public JAXBElement < TopLevelElement > createElement ( TopLevelElement value ) { } }

implementation: return new JAXBElement < TopLevelElement > ( _Element_QNAME , TopLevelElement . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Keybase } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "unique" ) public JAXBElement < Keybase > createUnique ( Keybase value ) { } }

implementation: return new JAXBElement < Keybase > ( _Unique_QNAME , Keybase . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link TopLevelComplexType } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "complexType" ) public JAXBElement < TopLevelComplexType > createComplexType ( TopLevelComplexType value ) { } }

implementation: return new JAXBElement < TopLevelComplexType > ( _ComplexType_QNAME , TopLevelComplexType . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Facet } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "maxInclusive" ) public JAXBElement < Facet > createMaxInclusive ( Facet value ) { } }

implementation: return new JAXBElement < Facet > ( _MaxInclusive_QNAME , Facet . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link TopLevelAttribute } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "attribute" ) public JAXBElement < TopLevelAttribute > createAttribute ( TopLevelAttribute value ) { } }

implementation: return new JAXBElement < TopLevelAttribute > ( _Attribute_QNAME , TopLevelAttribute . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Wildcard } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "anyAttribute" ) public JAXBElement < Wildcard > createAnyAttribute ( Wildcard value ) { } }

implementation: return new JAXBElement < Wildcard > ( _AnyAttribute_QNAME , Wildcard . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link LocalElement } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "element" , scope = Group . class ) public JAXBElement < LocalElement > createGroupElement ( LocalElement value ) { } }

implementation: return new JAXBElement < LocalElement > ( _Element_QNAME , LocalElement . class , Group . class , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link GroupRef } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.w3.org/2001/XMLSchema" , name = "group" , scope = Group . class ) public JAXBElement < GroupRef > createGroupGroup ( GroupRef value ) { } }

implementation: return new JAXBElement < GroupRef > ( _Group_QNAME , GroupRef . class , Group . class , value ) ;


signature:
public class UpdateAliasesLibsMojo { /** * This method retrieves a list of " . aliaslib " files to process in the
 * source directory ( usually " target / src " ) which is a copy of the actual
 * source directory used to compile the TIBCO BusinessWorks EAR . */
private List < File > initFiles ( ) throws IOException { } }

implementation: FileSet restriction = new FileSet ( ) ; File directory = buildSrcDirectory ; if ( directory == null ) { directory = new File ( "." ) ; getLog ( ) . warn ( SRC_NOT_SET ) ; } getLog ( ) . debug ( directory . getAbsolutePath ( ) ) ; restriction . setDirectory ( directory . getAbsolutePath ( ) ) ; restriction . addInclude ( "**/*.aliaslib" ) ; List < File > result = AbstractProjectsListMojo . toFileList ( restriction ) ; if ( customAliasLibDirectories != null && ! customAliasLibDirectories . isEmpty ( ) ) { for ( File customDirectory : customAliasLibDirectories ) { getLog ( ) . debug ( "Looking for '.aliaslib' files in custom directory: " + customDirectory ) ; FileSet customRestriction = new FileSet ( ) ; customRestriction . setDirectory ( customDirectory . getAbsolutePath ( ) ) ; customRestriction . addInclude ( "**/*.aliaslib" ) ; result . addAll ( AbstractProjectsListMojo . toFileList ( customRestriction ) ) ; } } getLog ( ) . debug ( "List of '.aliaslib' files to update: " + result ) ; return result ;


signature:
public class UpdateAliasesLibsMojo { /** * This method add an alias in the object used internally by TIBCO
 * BusinessWorks .
 * @ param list , an object used internally by TIBCO BusinessWorks .
 * @ param aliasName , the name of the alias as normalized b
 * { @ link AbstractBWMojo } . */
private void addAlias ( ArrayList < HashMap < String , Object > > list , String aliasName ) { } }

implementation:
for ( HashMap < String , Object > h : list ) { String name = ( String ) h . get ( "name" ) ; if ( name != null && name . equals ( aliasName ) ) { return ; // avoid duplicates
} } HashMap < String , Object > h = new HashMap < String , Object > ( ) ; h . put ( "isClasspathFile" , Boolean . TRUE ) ; h . put ( "name" , aliasName ) ; h . put ( "includeInDeployment" , Boolean . TRUE ) ; list . add ( h ) ;


signature:
public class UpdateAliasesLibsMojo { /** * This method adds the JAR aliases to a " . aliaslib " file
 * @ param f , the " . aliaslib " file to update
 * @ throws MojoExecutionException */
public void processFile ( File f ) throws MojoExecutionException { } }

implementation:
try { RepositoryModel repositoryModel = new RepositoryModel ( f ) ; ArrayList < HashMap < String , Object > > aliases = readXMLBean ( repositoryModel , f ) ; // reset old references
if ( ! keepOriginalAliasLib ) { aliases . clear ( ) ; } // adding the JAR dependencies
for ( Dependency dependency : jarDependencies ) { addAlias ( aliases , getJarAlias ( dependency , false ) ) ; } writeXMLBean ( repositoryModel , f , aliases ) ; } catch ( Exception e ) { throw new MojoExecutionException ( e . getMessage ( ) , e ) ; }


signature:
public class CompileProjlibMojo { /** * This calls the " buildlibrary " binary found in TIBCO Designer to build
 * a Projlib for the { @ link AbstractBWMojo # project } , defined by the { @ link CompileProjlibMojo # libBuilder } .
 * @ param outputFile , the path where the Projlib output will be created
 * @ throws MojoExecutionException
 * @ throws IOException */
private void buildProjlib ( File outputFile ) throws MojoExecutionException , IOException { } }

implementation:
checkDesignerBuildLibrary ( ) ; assert ( outputFile != null ) ; ArrayList < String > arguments = new ArrayList < String > ( ) ; arguments . add ( "-lib" ) ; // path of the libbuilder relative to the BW project path
arguments . add ( libBuilder ) ; arguments . add ( "-p" ) ; // BW project path
arguments . add ( buildSrcDirectory . getAbsolutePath ( ) ) ; arguments . add ( "-o" ) ; // output file
arguments . add ( outputFile . getAbsolutePath ( ) ) ; arguments . add ( "-x" ) ; // overwrite the output
if ( ! hideLibraryResources ) { arguments . add ( "-v" ) ; // validate the project
} getLog ( ) . info ( BUILDING_PROJLIB ) ; ArrayList < File > tras = new ArrayList < File > ( ) ; tras . add ( tibcoBuildLibraryTRAPath ) ; if ( tibcoBuildLibraryUseDesignerTRA ) { tras . add ( tibcoDesignerTRAPath ) ; } launchTIBCOBinary ( tibcoBuildLibraryPath , tras , arguments , directory , BUILD_PROJLIB_FAILED ) ;


signature:
public class TOperation { /** * Gets the rest of the content model .
 * You are getting this " catch - all " property because of the following reason :
 * The field name " Output " is used by two different parts of a schema . See :
 * line 217 of file : / C : / temp / tibco _ xsd / bw / wsdl . xsd
 * line 209 of file : / C : / temp / tibco _ xsd / bw / wsdl . xsd
 * To get rid of this property , apply a property customization to one
 * of both of the following declarations to change their names :
 * Gets the value of the rest property .
 * This accessor method returns a reference to the live list ,
 * not a snapshot . Therefore any modification you make to the
 * returned list will be present inside the JAXB object .
 * This is why there is not a < CODE > set < / CODE > method for the rest property .
 * For example , to add a new item , do as follows :
 * < pre >
 * getRest ( ) . add ( newItem ) ;
 * < / pre >
 * Objects of the following type ( s ) are allowed in the list
 * { @ link JAXBElement } { @ code < } { @ link TParam } { @ code > }
 * { @ link JAXBElement } { @ code < } { @ link TParam } { @ code > }
 * { @ link JAXBElement } { @ code < } { @ link TFault } { @ code > } */
public List < JAXBElement < ? extends TExtensibleAttributesDocumented > > getRest ( ) { } }

implementation: if ( rest == null ) { rest = new ArrayList < JAXBElement < ? extends TExtensibleAttributesDocumented > > ( ) ; } return this . rest ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link TDefinitions } { @ code > } } */
@ XmlElementDecl ( namespace = "http://schemas.xmlsoap.org/wsdl/" , name = "definitions" ) public JAXBElement < TDefinitions > createDefinitions ( TDefinitions value ) { } }

implementation: return new JAXBElement < TDefinitions > ( _Definitions_QNAME , TDefinitions . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link TFault } { @ code > } } */
@ XmlElementDecl ( namespace = "http://schemas.xmlsoap.org/wsdl/" , name = "fault" , scope = TOperation . class ) public JAXBElement < TFault > createTOperationFault ( TFault value ) { } }

implementation: return new JAXBElement < TFault > ( _TOperationFault_QNAME , TFault . class , TOperation . class , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link TParam } { @ code > } } */
@ XmlElementDecl ( namespace = "http://schemas.xmlsoap.org/wsdl/" , name = "output" , scope = TOperation . class ) public JAXBElement < TParam > createTOperationOutput ( TParam value ) { } }

implementation: return new JAXBElement < TParam > ( _TOperationOutput_QNAME , TParam . class , TOperation . class , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link TParam } { @ code > } } */
@ XmlElementDecl ( namespace = "http://schemas.xmlsoap.org/wsdl/" , name = "input" , scope = TOperation . class ) public JAXBElement < TParam > createTOperationInput ( TParam value ) { } }

implementation: return new JAXBElement < TParam > ( _TOperationInput_QNAME , TParam . class , TOperation . class , value ) ;


signature:
public class MethodInvocator { /** * Main - Usage : java ConsoleApp < hawkDomain > < rvService > < rvNetwork > < rvDaemon > */
public static void main ( String [ ] args ) { } }

implementation:
MethodInvocator ca = null ; if ( args . length != 4 ) { System . err . println ( "Usage: java ConsoleApp <hawkDomain> <rvService> <rvNetwork> <rvDaemon>" ) ; return ; } if ( args . length == 4 ) { try { ca = new MethodInvocator ( args [ 0 ] , args [ 1 ] , args [ 2 ] , args [ 3 ] , "COM.TIBCO.admin.TRA" ) ; ca . setMethodName ( "getComponentInstanceStatus" ) ; ca . setArguments ( "TEC-JMS" , "TEC-JMS-IN" ) ; // ca . setMethodName ( " getFileStatusForComponentFile " ) ;
// ca . setArguments ( " TEC - JMS " , " TEC - JMS - IN " , " C : / tibco / tra / domain / LOCAL / application / logs / TEC - JMS - TEC - JMS - IN . log " ) ;
ca . invocate ( ) ; } catch ( Exception e ) { e . printStackTrace ( ) ; } finally { System . exit ( 0 ) ; } }


signature:
public class GenerateRootDeploymentPOM { /** * / * modules */
private List < String > getActiveModules ( List < Profile > activeProfiles , Model model ) { } }

implementation: List < String > modules = model . getModules ( ) ; for ( Profile profile : model . getProfiles ( ) ) { Boolean found = false ; for ( Profile p : activeProfiles ) { if ( p . getId ( ) . equals ( profile . getId ( ) ) ) { found = true ; break ; } } if ( ! found ) continue ; for ( String module : profile . getModules ( ) ) { if ( modules . indexOf ( module ) < 0 ) { modules . add ( module ) ; } } } return modules ;


signature:
public class NameValuePairs { /** * Gets the value of the nvPair property .
 * This accessor method returns a reference to the live list ,
 * not a snapshot . Therefore any modification you make to the
 * returned list will be present inside the JAXB object .
 * This is why there is not a < CODE > set < / CODE > method for the nvPair property .
 * For example , to add a new item , do as follows :
 * < pre >
 * getNVPair ( ) . add ( newItem ) ;
 * < / pre >
 * Objects of the following type ( s ) are allowed in the list
 * { @ link JAXBElement } { @ code < } { @ link NVPairType } { @ code > }
 * { @ link JAXBElement } { @ code < } { @ link NameValuePairInteger } { @ code > }
 * { @ link JAXBElement } { @ code < } { @ link NameValuePairPassword } { @ code > }
 * { @ link JAXBElement } { @ code < } { @ link NameValuePairBoolean } { @ code > }
 * { @ link JAXBElement } { @ code < } { @ link NameValuePair } { @ code > } */
public List < JAXBElement < ? extends NVPairType > > getNVPair ( ) { } }

implementation: if ( nvPair == null ) { nvPair = new ArrayList < JAXBElement < ? extends NVPairType > > ( ) ; } return this . nvPair ;


signature:
public class POMManager { /** * Load a Maven { @ link Model } object from a POM file .
 * @ param pom
 * @ param logger
 * @ return the model parsed from the POM file
 * @ throws XmlPullParserException
 * @ throws IOException */
public static Model getModelFromPOM ( File pom , Log logger ) throws IOException , XmlPullParserException { } }

implementation:
Model model = null ; FileInputStream fis = null ; InputStreamReader isr = null ; try { fis = new FileInputStream ( pom ) ; isr = new InputStreamReader ( fis , "utf-8" ) ; // FIXME
MavenXpp3Reader reader = new MavenXpp3Reader ( ) ; model = reader . read ( isr ) ; } finally { try { isr . close ( ) ; fis . close ( ) ; } catch ( IOException e ) { e . printStackTrace ( ) ; } } return model ;


signature:
public class POMManager { /** * Merge a Maven { @ link Model } object from a POM file to an existing Maven
 * { @ link Model } object .
 * @ param pom
 * @ param existingModel
 * @ param logger
 * @ return the existing model merged with the parsed model from the POM file
 * @ throws XmlPullParserException
 * @ throws IOException */
public static Model mergeModelFromPOM ( File pom , Model existingModel , Log logger ) throws IOException , XmlPullParserException { } }

implementation:
if ( pom == null || ! pom . exists ( ) || existingModel == null || logger == null ) return null ; Model model = null ; FileInputStream fis = null ; InputStreamReader isr = null ; try { fis = new FileInputStream ( pom ) ; isr = new InputStreamReader ( fis , "utf-8" ) ; // FIXME
MavenXpp3Reader reader = new MavenXpp3Reader ( ) ; model = reader . read ( isr ) ; DefaultInheritanceAssembler assembler = new DefaultInheritanceAssembler ( ) ; assembler . assembleModelInheritance ( model , existingModel , null , null ) ; } finally { try { isr . close ( ) ; fis . close ( ) ; } catch ( IOException e ) { e . printStackTrace ( ) ; } } return model ;


signature:
public class POMManager { /** * Write a Maven { @ link Model } object to a POM file .
 * @ param model
 * @ param pom
 * @ param logger
 * @ throws IOException */
public static void writeModelToPOM ( Model model , File pom , Log logger ) throws IOException { } }

implementation: FileOutputStream fos = new FileOutputStream ( pom ) ; new MavenXpp3Writer ( ) . write ( fos , model ) ; try { fos . close ( ) ; } catch ( IOException e ) { e . printStackTrace ( ) ; }


signature:
public class POMManager { /** * Add the Maven dependency to a POM file .
 * @ param pom
 * @ param dependency
 * @ throws IOException
 * @ throws XmlPullParserException */
public static void addDependency ( File pom , Dependency dependency , Log logger ) throws IOException , XmlPullParserException { } }

implementation: Model model = getModelFromPOM ( pom , logger ) ; model . addDependency ( dependency ) ; writeModelToPOM ( model , pom , logger ) ;


signature:
public class POMManager { /** * Add the Maven dependency to a POM file ( in management section ) .
 * @ param pom
 * @ param dependency
 * @ throws IOException
 * @ throws XmlPullParserException */
public static void addDependencyManagement ( File pom , Dependency dependency , Log logger ) throws IOException , XmlPullParserException { } }

implementation: Model model = getModelFromPOM ( pom , logger ) ; DependencyManagement dMgmt = model . getDependencyManagement ( ) ; if ( dMgmt == null ) { model . setDependencyManagement ( new DependencyManagement ( ) ) ; dMgmt = model . getDependencyManagement ( ) ; } dMgmt . addDependency ( dependency ) ; writeModelToPOM ( model , pom , logger ) ;


signature:
public class POMManager { /** * Remove the Maven dependency from a POM file .
 * @ param pom
 * @ param dependency
 * @ throws IOException
 * @ throws XmlPullParserException */
public static void removeDependency ( File pom , Dependency dependency , Log logger ) throws IOException , XmlPullParserException { } }

implementation: Model model = getModelFromPOM ( pom , logger ) ; for ( Iterator < Dependency > it = model . getDependencies ( ) . iterator ( ) ; it . hasNext ( ) ; ) { if ( dependenciesEqual ( it . next ( ) , dependency ) ) { it . remove ( ) ; } } writeModelToPOM ( model , pom , logger ) ;


signature:
public class POMManager { /** * Remove the Maven dependency from a POM file ( in management section ) .
 * @ param pom
 * @ param dependency
 * @ throws IOException
 * @ throws XmlPullParserException */
public static void removeDependencyManagement ( File pom , Dependency dependency , Log logger ) throws IOException , XmlPullParserException { } }

implementation: Model model = getModelFromPOM ( pom , logger ) ; DependencyManagement dMgmt = model . getDependencyManagement ( ) ; if ( dMgmt == null ) { model . setDependencyManagement ( new DependencyManagement ( ) ) ; dMgmt = model . getDependencyManagement ( ) ; } for ( Iterator < Dependency > it = dMgmt . getDependencies ( ) . iterator ( ) ; it . hasNext ( ) ; ) { if ( dependenciesEqual ( it . next ( ) , dependency ) ) { it . remove ( ) ; } } writeModelToPOM ( model , pom , logger ) ;


signature:
public class POMManager { /** * Check whether a dependency exists in a list of dependencies .
 * @ param dependency
 * @ param dependencies
 * @ return true if the dependency exists in dependencies list */
private static boolean dependencyExists ( Dependency dependency , List < Dependency > dependencies ) { } }

implementation: for ( Dependency d : dependencies ) { if ( dependenciesEqual ( dependency , d ) ) { return true ; } } return false ;


signature:
public class POMManager { /** * Check whether a dependency exists in a POM .
 * @ param pom
 * @ param dependency
 * @ param logger
 * @ return true if the dependency exists in the POM
 * @ throws IOException
 * @ throws XmlPullParserException */
public static boolean dependencyExists ( File pom , Dependency dependency , Log logger ) throws IOException , XmlPullParserException { } }

implementation: Model model = getModelFromPOM ( pom , logger ) ; return dependencyExists ( dependency , model . getDependencies ( ) ) ;


signature:
public class POMManager { /** * Check whether a dependency exists in a POM ( in management section ) .
 * @ param pom
 * @ param dependency
 * @ param logger
 * @ return true if the dependency exists in the management section of the
 * POM
 * @ throws IOException
 * @ throws XmlPullParserException */
public static boolean dependencyExistsManagement ( File pom , Dependency dependency , Log logger ) throws IOException , XmlPullParserException { } }

implementation: Model model = getModelFromPOM ( pom , logger ) ; DependencyManagement dMgmt = model . getDependencyManagement ( ) ; if ( dMgmt == null ) { model . setDependencyManagement ( new DependencyManagement ( ) ) ; dMgmt = model . getDependencyManagement ( ) ; } return dependencyExists ( dependency , dMgmt . getDependencies ( ) ) ;


signature:
public class POMManager { /** * Add a project as a module .
 * @ param pom
 * @ param relativePath
 * @ param logger
 * @ throws IOException
 * @ throws XmlPullParserException */
public static void addProjectAsModule ( File pom , String relativePath , String profileId , Log logger ) throws IOException , XmlPullParserException { } }

implementation: if ( relativePath == null ) return ; Model model = getModelFromPOM ( pom , logger ) ; relativePath = relativePath . replace ( "\\" , "/" ) ; if ( profileId != null && ! profileId . isEmpty ( ) ) { Profile p = getProfile ( model , profileId ) ; if ( p != null ) { p . addModule ( relativePath ) ; } } else { model . addModule ( relativePath ) ; } writeModelToPOM ( model , pom , logger ) ;


signature:
public class POMManager { /** * Check whether a module exists in a POM .
 * @ param rootPOM
 * @ param relative
 * @ param log
 * @ return
 * @ throws XmlPullParserException
 * @ throws IOException */
public static boolean moduleExists ( File pom , String relativePath , String profileId , Log logger ) throws IOException , XmlPullParserException { } }

implementation: if ( relativePath == null ) return false ; Model model = getModelFromPOM ( pom , logger ) ; relativePath = relativePath . replace ( "\\" , "/" ) ; if ( profileId != null && ! profileId . isEmpty ( ) ) { Profile p = getProfile ( model , profileId ) ; if ( p != null ) { return p . getModules ( ) . indexOf ( relativePath ) >= 0 ; } } else { return model . getModules ( ) . indexOf ( relativePath ) >= 0 ; } return false ;


signature:
public class AbstractPackagingMojo { /** * This loads a properties file into a java . util . Properties object with
 * sorted keys . < br / > < br / >
 * < b > NB < / b > : always use keys ( ) method to browse the properties
 * @ param propertiesFile
 * @ return
 * @ throws ConfigurationException
 * @ throws IOException */
protected Properties loadPropertiesFile ( File propertiesFile ) throws ConfigurationException , IOException { } }

implementation:
Properties properties = new Properties ( ) { // sorted properties
private static final long serialVersionUID = 7793482336210629858L ; @ Override public synchronized Enumeration < Object > keys ( ) { return Collections . enumeration ( new TreeSet < Object > ( super . keySet ( ) ) ) ; } } ; FileInputStream fileInputStream = new FileInputStream ( propertiesFile ) ; properties . load ( fileInputStream ) ; return properties ;


signature:
public class AbstractPackagingMojo { /** * This saves a java . util . Properties to a file . < br / >
 * It is possible to add a comment at the beginning of the file .
 * @ param outputFile , the File where to output the Properties
 * @ param properties , the Properties to save
 * @ param propertiesComment , the comment to add at the beginning of the file
 * @ param success , the success message
 * @ param failure , the failure message
 * @ throws MojoExecutionException */
protected void savePropertiesToFile ( File outputFile , Properties properties , String propertiesComment , String success , String failure ) throws MojoExecutionException { } }

implementation: OutputStream outputStream = null ; try { outputFile . getParentFile ( ) . mkdirs ( ) ; outputStream = new FileOutputStream ( outputFile ) ; properties . store ( outputStream , propertiesComment ) ; if ( filterProperties ) { getLog ( ) . debug ( "Filtering properties files" ) ; File tmpDir = new File ( outputFile . getParentFile ( ) , "tmp" ) ; tmpDir . mkdir ( ) ; List < Resource > resources = new ArrayList < Resource > ( ) ; Resource r = new Resource ( ) ; r . setDirectory ( outputFile . getParentFile ( ) . getAbsolutePath ( ) ) ; r . addInclude ( "*.properties" ) ; r . setFiltering ( true ) ; resources . add ( r ) ; ArrayList < Object > filters = new ArrayList < Object > ( ) ; List < String > nonFilteredFileExtensions = new ArrayList < String > ( ) ; MavenResourcesExecution mre = new MavenResourcesExecution ( resources , tmpDir , this . getProject ( ) , this . sourceEncoding , filters , nonFilteredFileExtensions , session ) ; mavenResourcesFiltering . filterResources ( mre ) ; FileUtils . copyDirectory ( tmpDir , outputFile . getParentFile ( ) ) ; FileUtils . deleteDirectory ( tmpDir ) ; } getLog ( ) . info ( success + " '" + outputFile + "'" ) ; } catch ( Exception e ) { throw new MojoExecutionException ( failure + " '" + outputFile + "'" , e ) ; } finally { try { outputStream . close ( ) ; } catch ( Exception e ) { } }


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link String } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "performPolicy" ) public JAXBElement < String > createPerformPolicy ( String value ) { } }

implementation: return new JAXBElement < String > ( _PerformPolicy_QNAME , String . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link String } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "container" ) public JAXBElement < String > createContainer ( String value ) { } }

implementation: return new JAXBElement < String > ( _Container_QNAME , String . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link String } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "machine" ) public JAXBElement < String > createMachine ( String value ) { } }

implementation: return new JAXBElement < String > ( _Machine_QNAME , String . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link FormFlow } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "formFlow" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "baseService" ) public JAXBElement < FormFlow > createFormFlow ( FormFlow value ) { } }

implementation: return new JAXBElement < FormFlow > ( _FormFlow_QNAME , FormFlow . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link HttpRepoInstance } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "httpRepoInstance" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "remoteRepoInstance" ) public JAXBElement < HttpRepoInstance > createHttpRepoInstance ( HttpRepoInstance value ) { } }

implementation: return new JAXBElement < HttpRepoInstance > ( _HttpRepoInstance_QNAME , HttpRepoInstance . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link EmailAction } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "emailAction" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "action" ) public JAXBElement < EmailAction > createEmailAction ( EmailAction value ) { } }

implementation: return new JAXBElement < EmailAction > ( _EmailAction_QNAME , EmailAction . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link RemoteRepoInstanceType } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "remoteRepoInstance" ) public JAXBElement < RemoteRepoInstanceType > createRemoteRepoInstance ( RemoteRepoInstanceType value ) { } }

implementation: return new JAXBElement < RemoteRepoInstanceType > ( _RemoteRepoInstance_QNAME , RemoteRepoInstanceType . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link String } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "level" ) public JAXBElement < String > createLevel ( String value ) { } }

implementation: return new JAXBElement < String > ( _Level_QNAME , String . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link EventType } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "event" ) public JAXBElement < EventType > createEvent ( EventType value ) { } }

implementation: return new JAXBElement < EventType > ( _Event_QNAME , EventType . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Bw } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "bw" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "baseService" ) public JAXBElement < Bw > createBw ( Bw value ) { } }

implementation: return new JAXBElement < Bw > ( _Bw_QNAME , Bw . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link NVPairType } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "NVPair" ) public JAXBElement < NVPairType > createNVPair ( NVPairType value ) { } }

implementation: return new JAXBElement < NVPairType > ( _NVPair_QNAME , NVPairType . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link FailureEvent } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "failureEvent" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "event" ) public JAXBElement < FailureEvent > createFailureEvent ( FailureEvent value ) { } }

implementation: return new JAXBElement < FailureEvent > ( _FailureEvent_QNAME , FailureEvent . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link SuspendProcessEvent } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "suspendProcessEvent" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "event" ) public JAXBElement < SuspendProcessEvent > createSuspendProcessEvent ( SuspendProcessEvent value ) { } }

implementation: return new JAXBElement < SuspendProcessEvent > ( _SuspendProcessEvent_QNAME , SuspendProcessEvent . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link CustomAction } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "customAction" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "action" ) public JAXBElement < CustomAction > createCustomAction ( CustomAction value ) { } }

implementation: return new JAXBElement < CustomAction > ( _CustomAction_QNAME , CustomAction . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Service } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "service" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "baseService" ) public JAXBElement < Service > createService ( Service value ) { } }

implementation: return new JAXBElement < Service > ( _Service_QNAME , Service . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Boolean } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "checkPointRecoveryStorage" , defaultValue = "false" ) public JAXBElement < Boolean > createCheckPointRecoveryStorage ( Boolean value ) { } }

implementation: return new JAXBElement < Boolean > ( _CheckPointRecoveryStorage_QNAME , Boolean . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link LogEvent } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "logEvent" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "event" ) public JAXBElement < LogEvent > createLogEvent ( LogEvent value ) { } }

implementation: return new JAXBElement < LogEvent > ( _LogEvent_QNAME , LogEvent . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link String } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "checkpoint" ) public JAXBElement < String > createCheckpoint ( String value ) { } }

implementation: return new JAXBElement < String > ( _Checkpoint_QNAME , String . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Im } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "im" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "baseService" ) public JAXBElement < Im > createIm ( Im value ) { } }

implementation: return new JAXBElement < Im > ( _Im_QNAME , Im . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Adapter } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "adapter" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "baseService" ) public JAXBElement < Adapter > createAdapter ( Adapter value ) { } }

implementation: return new JAXBElement < Adapter > ( _Adapter_QNAME , Adapter . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link NameValuePair } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "NameValuePair" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "NVPair" ) public JAXBElement < NameValuePair > createNameValuePair ( NameValuePair value ) { } }

implementation: return new JAXBElement < NameValuePair > ( _NameValuePair_QNAME , NameValuePair . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link ServiceType } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "baseService" ) public JAXBElement < ServiceType > createBaseService ( ServiceType value ) { } }

implementation: return new JAXBElement < ServiceType > ( _BaseService_QNAME , ServiceType . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link RvRepoInstance } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "rvRepoInstance" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "remoteRepoInstance" ) public JAXBElement < RvRepoInstance > createRvRepoInstance ( RvRepoInstance value ) { } }

implementation: return new JAXBElement < RvRepoInstance > ( _RvRepoInstance_QNAME , RvRepoInstance . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link ApplicationType } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "application" ) public JAXBElement < ApplicationType > createApplication ( ApplicationType value ) { } }

implementation: return new JAXBElement < ApplicationType > ( _Application_QNAME , ApplicationType . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link Boolean } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "isFt" ) public JAXBElement < Boolean > createIsFt ( Boolean value ) { } }

implementation: return new JAXBElement < Boolean > ( _IsFt_QNAME , Boolean . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link NameValuePairPassword } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "NameValuePairPassword" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "NVPair" ) public JAXBElement < NameValuePairPassword > createNameValuePairPassword ( NameValuePairPassword value ) { } }

implementation: return new JAXBElement < NameValuePairPassword > ( _NameValuePairPassword_QNAME , NameValuePairPassword . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link LocalRepoInstance } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "localRepoInstance" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "repoInstance" ) public JAXBElement < LocalRepoInstance > createLocalRepoInstance ( LocalRepoInstance value ) { } }

implementation: return new JAXBElement < LocalRepoInstance > ( _LocalRepoInstance_QNAME , LocalRepoInstance . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link RepoInstanceType } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "repoInstance" ) public JAXBElement < RepoInstanceType > createRepoInstance ( RepoInstanceType value ) { } }

implementation: return new JAXBElement < RepoInstanceType > ( _RepoInstance_QNAME , RepoInstanceType . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link String } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "startupType" , defaultValue = "automatic" ) public JAXBElement < String > createStartupType ( String value ) { } }

implementation: return new JAXBElement < String > ( _StartupType_QNAME , String . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link AlertAction } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "alertAction" , substitutionHeadNamespace = "http://www.tibco.com/xmlns/ApplicationManagement" , substitutionHeadName = "action" ) public JAXBElement < AlertAction > createAlertAction ( AlertAction value ) { } }

implementation: return new JAXBElement < AlertAction > ( _AlertAction_QNAME , AlertAction . class , null , value ) ;


signature:
public class ObjectFactory { /** * Create an instance of { @ link JAXBElement } { @ code < } { @ link AnyObject } { @ code > } } */
@ XmlElementDecl ( namespace = "http://www.tibco.com/xmlns/ApplicationManagement" , name = "extends" , scope = Plugins . class ) public JAXBElement < AnyObject > createPluginsExtends ( AnyObject value ) { } }

implementation: return new JAXBElement < AnyObject > ( _PluginsExtends_QNAME , AnyObject . class , Plugins . class , value ) ;


signature:
public class AbstractBWArtifactMojo { /** * This returns a { @ link DefaultArtifact } object with the same groupId ,
 * artifactId , version and scope as the main artifact of the project
 * ( for instance ' bw - ear ' or ' projlib ' ) .
 * This { @ link DefaultArtifact } will have its own { @ link type } and
 * { @ link classifier } .
 * @ param a
 * @ param type
 * @ param classifier
 * @ return */
private Artifact extractArtifact ( Artifact a , String type , String classifier ) { } }

implementation: if ( a == null ) { return a ; } Artifact result = new DefaultArtifact ( a . getGroupId ( ) , a . getArtifactId ( ) , a . getVersionRange ( ) , a . getScope ( ) , type , classifier , new DefaultArtifactHandler ( type ) ) ; return result ;


signature:
public class AbstractBWArtifactMojo { /** * Retrieves the full path of the artifact that will be created .
 * @ param basedir , the directory where the artifact will be created
 * @ param finalName , the name of the artifact , without file extension
 * @ param classifier
 * @ return a { @ link File } object with the path of the artifact */
protected File getArtifactFile ( File basedir , String finalName , String classifier ) { } }

implementation: if ( classifier == null ) { classifier = "" ; } else if ( classifier . trim ( ) . length ( ) > 0 && ! classifier . startsWith ( "-" ) ) { classifier = "-" + classifier ; } return new File ( basedir , finalName + classifier + getArtifactFileExtension ( ) ) ;


signature:
public class XPathResourceBuilderMojo { /** * MOJO execution method . */
public void execute ( ) throws MojoExecutionException { } }

implementation:
if ( this . resources . size ( ) == 0 ) { throw new MojoExecutionException ( "No resources configured" ) ; } // Prefered to count error instead of failing on the first one .
int errCount = 0 ; // Iterate on all configured resources .
for ( final XPathResource r : this . resources ) { try { classBytesToBWJavaXPath ( r ) ; } catch ( Exception e ) { super . getLog ( ) . error ( e ) ; errCount ++ ; } } if ( errCount > 0 ) { throw new MojoExecutionException ( "There was " + errCount + " error(s) during goal execution, check above." ) ; }


signature:
public class XPathResourceBuilderMojo { /** * Reads the complete content of the javaxpath file .
 * @ param filename
 * @ return
 * @ throws IOException */
protected String extractFileContent ( final String filename ) throws IOException { } }

implementation: final StringBuilder sb = new StringBuilder ( ) ; String temp = "" ; final BufferedReader bufferedReader = new BufferedReader ( new FileReader ( filename ) ) ; try { while ( temp != null ) { temp = bufferedReader . readLine ( ) ; if ( temp != null ) { sb . append ( temp ) ; } } return sb . toString ( ) ; } finally { bufferedReader . close ( ) ; }


signature:
public class XPathResourceBuilderMojo { /** * Reads a class byte code from current { @ link ClassLoader }
 * @ param className
 * @ return
 * @ throws RuntimeException */
protected byte [ ] getBytesForClass ( final String className ) throws RuntimeException { } }

implementation: try { ClassLoader classLoader = this . getClass ( ) . getClassLoader ( ) ; InputStream stream = classLoader . getResourceAsStream ( className . replace ( "." , "/" ) + ".class" ) ; if ( stream == null ) { throw new NullPointerException ( "Class " + className + " could not be loaded. Check plugin dependencies." ) ; } byte [ ] byteArray = new byte [ 1024000 ] ; int readBytes = 0 ; int currentOffset = 0 ; while ( ( readBytes = stream . read ( byteArray , currentOffset , 1024 ) ) >= 0 ) { currentOffset += readBytes ; } return Arrays . copyOf ( byteArray , currentOffset ) ; } catch ( Exception e ) { throw new RuntimeException ( e ) ; }


signature:
public class AbstractBWDeployMojo { /** * For each AppManage command a common set of arguments is required ( domain ,
 * project name , . . . )
 * @ return a list with common arguments for AppManage . */
public ArrayList < String > commonArguments ( ) { } }

implementation: ArrayList < String > arguments = new ArrayList < String > ( ) ; arguments . add ( "-app" ) ; arguments . add ( deployedProjectName ) ; arguments . add ( "-domain" ) ; arguments . add ( domainName ) ; arguments . add ( "-user" ) ; arguments . add ( domainUsername ) ; arguments . add ( "-pw" ) ; arguments . add ( domainPassword ) ; return arguments ;


signature:
public class GenerateXMLFromPropertiesMojo { /** * First we will copy the XML file extracted from the EAR to the final file
 * to be produced after merging all the properties files .
 * Then we will initialize the { @ link ApplicationType } by unmarshalling
 * this final file .
 * @ throws MojoExecutionException */
private void init ( ) throws MojoExecutionException { } }

implementation: try { FileUtils . copyFile ( deploymentDescriptor , deploymentDescriptorFinal ) ; } catch ( IOException e ) { throw new MojoExecutionException ( APPLICATION_MANAGEMENT_COPY_FAILURE + " '" + deploymentDescriptor + "' to '" + deploymentDescriptorFinal + "'" , e ) ; } try { application = new ApplicationManagement ( deploymentDescriptorFinal ) ; } catch ( JAXBException e ) { throw new MojoExecutionException ( APPLICATION_MANAGEMENT_LOAD_FAILURE + " '" + deploymentDescriptorFinal + "'" , e ) ; }


signature:
public class GenerateXMLFromPropertiesMojo { /** * This will merge the Global Variables properties file into the
 * { @ link ApplicationType } object .
 * @ throws MojoExecutionException */
private void mergeGlobalVariables ( ) throws MojoExecutionException { } }

implementation: Properties propertiesGlobalVariables ; try { propertiesGlobalVariables = loadPropertiesFile ( deploymentGlobalVariables ) ; } catch ( Exception e ) { throw new MojoExecutionException ( PROPERTIES_GLOBAL_VARIABLES_LOAD_FAILURE + " '" + deploymentGlobalVariables + "'" , e ) ; } Enumeration < Object > e = propertiesGlobalVariables . keys ( ) ; while ( e . hasMoreElements ( ) ) { String key = ( String ) e . nextElement ( ) ; String value = propertiesGlobalVariables . getProperty ( key ) ; application . setGlobalVariable ( key , value ) ; }


signature:
public class GenerateXMLFromPropertiesMojo { /** * This will update the & lt ; repoInstances > element . */
private void updateRepoInstances ( ) { } }

implementation: RepoInstances repoInstances = application . getRepoInstances ( ) ; RvRepoInstance rvRepoInstance = repoInstances . getRvRepoInstance ( ) ; rvRepoInstance . setDiscoveryTimout ( BigInteger . valueOf ( repoRvDiscoveryTimeout ) ) ; rvRepoInstance . setTimeout ( BigInteger . valueOf ( repoRvTimeout ) ) ; rvRepoInstance . setDaemon ( repoRvDaemon ) ; rvRepoInstance . setService ( repoRvService ) ; rvRepoInstance . setNetwork ( repoRvNetwork ) ; rvRepoInstance . setRegionalSubject ( repoRvRegionalSubject ) ; rvRepoInstance . setOperationRetry ( BigInteger . valueOf ( repoRvOperationRetry ) ) ; rvRepoInstance . setExtraPropertyFile ( repoRvExtraPropertyFile ) ; rvRepoInstance . setServer ( repoRvServer ) ; rvRepoInstance . setUser ( repoRvUser ) ; rvRepoInstance . setPassword ( repoRvPassword ) ; HttpRepoInstance httpRepoInstance = repoInstances . getHttpRepoInstance ( ) ; httpRepoInstance . setTimeout ( BigInteger . valueOf ( repoHttpTimeout ) ) ; httpRepoInstance . setUrl ( repoHttpUrl ) ; httpRepoInstance . setServer ( repoHttpServer ) ; httpRepoInstance . setUser ( repoHttpUser ) ; httpRepoInstance . setPassword ( repoHttpPassword ) ; httpRepoInstance . setExtraPropertyFile ( repoHttpExtraPropertyFile ) ; LocalRepoInstance localRepoInstance = repoInstances . getLocalRepoInstance ( ) ; EncodingType encoding ; try { encoding = EncodingType . valueOf ( repoLocalEncoding ) ; } catch ( IllegalArgumentException e ) { encoding = EncodingType . UTF_8 ; } localRepoInstance . setEncoding ( encoding ) ; repoInstances . setRvRepoInstance ( rvRepoInstance ) ; repoInstances . setHttpRepoInstance ( httpRepoInstance ) ; repoInstances . setLocalRepoInstance ( localRepoInstance ) ; RepoType repoType ; try { repoType = RepoType . valueOf ( repoSelectInstance . toUpperCase ( ) ) ; } catch ( IllegalArgumentException e ) { repoType = RepoType . LOCAL ; } repoInstances . setSelected ( repoType ) ;


signature:
public class IncludeDependenciesInEARMojo { /** * This methods copies the transitive JAR dependencies of the project inside
 * the " WEB - INF / lib " folder of the " lib . zip " subarchive of the TIBCO
 * BusinessWorks EAR archive .
 * @ param ear , the TIBCO BusinessWorks EAR archive file
 * @ throws IOException
 * @ throws JDOMException
 * @ throws JaxenException */
private void copyRuntimeJARsInEAR ( File ear ) throws IOException , JDOMException { } }

implementation:
Fileset fileSet = new Fileset ( ) ; fileSet . setDirectory ( buildLibDirectory . getAbsolutePath ( ) ) ; for ( Dependency dependency : this . getJarDependencies ( ) ) { String jarName = getJarName ( dependency , false ) ; fileSet . addInclude ( jarName ) ; // using jarName because files are all in buildLibDirectory
} String ouptutDirectory = ear . getAbsolutePath ( ) + File . separator + "lib.zip" + File . separator + "WEB-INF" + File . separator + "lib" ; fileSet . setOutputDirectory ( ouptutDirectory ) ; if ( fileSet . getIncludes ( ) != null && ! fileSet . getIncludes ( ) . isEmpty ( ) ) { truezip . copy ( fileSet ) ; } truezip . sync ( ) ; if ( removeVersionFromFileNames ) { removeVersionFromFileNames ( ouptutDirectory , ear ) ; truezip . sync ( ) ; }


signature:
public class AbstractProjectsListMojo { /** * Get the relative path from one file to another , specifying the directory
 * separator .
 * If one of the provided resources does not exist , it is assumed to be a
 * file unless it ends with ' / ' or ' \ ' .
 * @ param targetPath targetPath is calculated to this file
 * @ param basePath basePath is calculated from this file
 * @ param pathSeparator directory separator . The platform default is not assumed so that we can test Unix behaviour when running on Windows ( for example )
 * @ return */
public static String getRelativePath ( String targetPath , String basePath , String pathSeparator ) { } }

implementation:
// Normalize the paths
String normalizedTargetPath = FilenameUtils . normalizeNoEndSeparator ( targetPath ) ; String normalizedBasePath = FilenameUtils . normalizeNoEndSeparator ( basePath ) ; // Undo the changes to the separators made by normalization
if ( pathSeparator . equals ( "/" ) ) { normalizedTargetPath = FilenameUtils . separatorsToUnix ( normalizedTargetPath ) ; normalizedBasePath = FilenameUtils . separatorsToUnix ( normalizedBasePath ) ; } else if ( pathSeparator . equals ( "\\" ) ) { normalizedTargetPath = FilenameUtils . separatorsToWindows ( normalizedTargetPath ) ; normalizedBasePath = FilenameUtils . separatorsToWindows ( normalizedBasePath ) ; } else { throw new IllegalArgumentException ( "Unrecognised dir separator '" + pathSeparator + "'" ) ; } String [ ] base = normalizedBasePath . split ( Pattern . quote ( pathSeparator ) ) ; String [ ] target = normalizedTargetPath . split ( Pattern . quote ( pathSeparator ) ) ; // First get all the common elements . Store them as a string ,
// and also count how many of them there are .
StringBuffer common = new StringBuffer ( ) ; int commonIndex = 0 ; while ( commonIndex < target . length && commonIndex < base . length && target [ commonIndex ] . equals ( base [ commonIndex ] ) ) { common . append ( target [ commonIndex ] + pathSeparator ) ; commonIndex ++ ; } if ( commonIndex == 0 ) { // No single common path element . This most
// likely indicates differing drive letters , like C : and D : .
// These paths cannot be relativized .
throw new PathResolutionException ( "No common path element found for '" + normalizedTargetPath + "' and '" + normalizedBasePath + "'" ) ; } // The number of directories we have to backtrack depends on whether the base is a file or a dir
// For example , the relative path from
// / foo / bar / baz / gg / ff to / foo / bar / baz
// " . . " if ff is a file
// " . . / . . " if ff is a directory
// The following is a heuristic to figure out if the base refers to a file or dir . It ' s not perfect , because
// the resource referred to by this path may not actually exist , but it ' s the best I can do
boolean baseIsFile = true ; File baseResource = new File ( normalizedBasePath ) ; if ( baseResource . exists ( ) ) { baseIsFile = baseResource . isFile ( ) ; } else if ( basePath . endsWith ( pathSeparator ) ) { baseIsFile = false ; } StringBuffer relative = new StringBuffer ( ) ; if ( base . length != commonIndex ) { int numDirsUp = baseIsFile ? base . length - commonIndex - 1 : base . length - commonIndex ; for ( int i = 0 ; i < numDirsUp ; i ++ ) { relative . append ( ".." + pathSeparator ) ; } } relative . append ( normalizedTargetPath . substring ( common . length ( ) ) ) ; return relative . toString ( ) ;


signature:
public class MergePropertiesMojo { /** * This expands wild cards properties . < br / > < br / >
 * Both wildcard expressions and expressions to expand are present in the
 * same properties object . < br / > < br / >
 * < i > Example < / i >
 * < ul >
 * < li > < b > property with wildcard < / b > : / root / element [ * ] / key = new _ value < / li >
 * < li > < b > property matching < / b > : / root / element [ my _ name ] / key = old _ value < / li >
 * < / ul >
 * will expand to : < br / >
 * < ul >
 * < li > < b > property after expansion < / b > :
 * / root / element [ my _ name ] / key = new _ value < / li >
 * < / ul >
 * @ param properties , the properties object with wildcard expressions and
 * expressions to expand
 * @ return properties with expanded expressions , but without wildcard
 * expressions */
protected Properties expandWildCards ( Properties properties ) { } }

implementation:
Properties propertiesWithWildCards = new Properties ( ) { // sorted properties
private static final long serialVersionUID = 7793482336210629858L ; @ Override public synchronized Enumeration < Object > keys ( ) { return Collections . enumeration ( new TreeSet < Object > ( super . keySet ( ) ) ) ; } } ; String key ; // retrieve the keys with WildCards
Enumeration < Object > e = properties . keys ( ) ; while ( e . hasMoreElements ( ) ) { key = ( String ) e . nextElement ( ) ; if ( isAWildCard ( key ) ) { propertiesWithWildCards . setProperty ( key , properties . getProperty ( key ) ) ; properties . remove ( key ) ; } } // try to replace the values of other keys matching the keys with WildCards
Enumeration < Object > w = propertiesWithWildCards . keys ( ) ; while ( w . hasMoreElements ( ) ) { String keyWithWildCards = ( String ) w . nextElement ( ) ; String regex = wildcardToRegex ( keyWithWildCards ) ; String ignoreWildcardInVariablesPattern = "(.*)variables\\\\\\[(.*)\\\\\\]\\/variable\\\\\\[(.*)\\\\\\](.*)" ; Pattern p = Pattern . compile ( ignoreWildcardInVariablesPattern ) ; Matcher m = p . matcher ( regex ) ; if ( m . matches ( ) ) { String variables = m . group ( 2 ) ; String variable = m . group ( 3 ) ; variables = variables . replace ( ".*" , "\\*" ) ; variable = variable . replace ( ".*" , "\\*" ) ; regex = m . group ( 1 ) + "variables\\[" + variables + "\\]/variable\\[" + variable + "\\]" + m . group ( 4 ) ; } Boolean found = false ; e = properties . keys ( ) ; while ( e . hasMoreElements ( ) ) { key = ( String ) e . nextElement ( ) ; if ( Pattern . matches ( regex , key ) ) { found = true ; String value = ( String ) propertiesWithWildCards . getProperty ( keyWithWildCards ) ; properties . setProperty ( key , value ) ; } } // not found , we put back the expression with wild cards in the original list ( false positive )
// this way the wildcard can still be used in a next pass and will be removed at the end by AbstractPackagingMojo . removeWildCards
if ( ! found ) { properties . setProperty ( keyWithWildCards , propertiesWithWildCards . getProperty ( keyWithWildCards ) ) ; } } return properties ;


signature:
public class AbstractWrapperForBuiltinMojo { /** * This method will call the actual builtin goal from the Mojo specified in
 * Plexus ' components . xml ' . < br / >
 * The { @ link MojoExecutor } is used to perform the call natively . */
public void execute ( ) throws MojoExecutionException { } }

implementation: executeMojo ( plugin ( groupId ( getGroupId ( ) ) , artifactId ( getArtifactId ( ) ) , version ( getVersion ( ) ) ) , goal ( getGoal ( ) ) , configuration ( generateConfiguration ( getConfiguration ( ) ) . toArray ( new Element [ 0 ] ) ) , getEnvironment ( ) ) ;


signature:
public class Repository { /** * Gets the value of the any property .
 * This accessor method returns a reference to the live list ,
 * not a snapshot . Therefore any modification you make to the
 * returned list will be present inside the JAXB object .
 * This is why there is not a < CODE > set < / CODE > method for the any property .
 * For example , to add a new item , do as follows :
 * < pre >
 * getAny ( ) . add ( newItem ) ;
 * < / pre >
 * Objects of the following type ( s ) are allowed in the list
 * { @ link Element }
 * { @ link java . lang . Object } */
public List < java . lang . Object > getAny ( ) { } }

implementation: if ( any == null ) { any = new ArrayList < java . lang . Object > ( ) ; } return this . any ;


signature:
public class ConnectionProxyHandler { /** * Wrap Statement during { @ link Connection # createStatement ( ) }
 * @ param methodInvocation Current { @ link Connection # createStatement ( ) } invocation
 * @ return Proxified { @ link Statement } */
private Statement createStatement ( MethodInvocation < Connection > methodInvocation ) throws Throwable { } }

implementation: Statement result = ( Statement ) methodInvocation . proceed ( ) ; result = proxyFactory . wrapStatement ( result ) ; return result ;


signature:
public class ConnectionProxyHandler { /** * Wrap Statement during { @ link Connection # prepareStatement ( String ) } ( ) }
 * @ param methodInvocation Current { @ link Connection # prepareStatement ( String ) } invocation
 * @ return Proxified { @ link PreparedStatement } */
private PreparedStatement prepareStatement ( MethodInvocation < Connection > methodInvocation ) throws Throwable { } }

implementation: String sql = methodInvocation . getArgAt ( 0 , String . class ) ; PreparedStatement result = ( PreparedStatement ) methodInvocation . proceed ( ) ; result = proxyFactory . wrapPreparedStatement ( result , sql ) ; return result ;


signature:
public class ConnectionProxyHandler { /** * Wrap Statement during { @ link Connection # prepareCall ( String ) }
 * @ param methodInvocation Current { @ link Connection # prepareCall ( String ) } invocation
 * @ return Proxified { @ link CallableStatement } */
private CallableStatement prepareCall ( MethodInvocation < Connection > methodInvocation ) throws Throwable { } }

implementation: String sql = methodInvocation . getArgAt ( 0 , String . class ) ; CallableStatement result = ( CallableStatement ) methodInvocation . proceed ( ) ; result = proxyFactory . wrapCallableStatement ( result , sql ) ; return result ;


signature:
public class Driver { /** * Instantiate a new object of type T
 * @ param clazz Object class
 * @ param params Constructor args
 * @ param < T > Object type
 * @ return New object */
private static < T > T newInstance ( Class < T > clazz , Object ... params ) throws SQLException { } }

implementation: try { if ( params == null || params . length == 0 ) { return clazz . newInstance ( ) ; } else { for ( Constructor < ? > ctor : clazz . getConstructors ( ) ) { if ( ctor . getParameterTypes ( ) . length != params . length ) { continue ; } int paramIndex = 0 ; for ( Class < ? > paramType : ctor . getParameterTypes ( ) ) { if ( ! paramType . isInstance ( params [ paramIndex ] ) ) { break ; } paramIndex ++ ; } if ( paramIndex != params . length ) { continue ; } @ SuppressWarnings ( "unchecked" ) Constructor < T > theCtor = ( Constructor < T > ) ctor ; return theCtor . newInstance ( params ) ; } throw new SQLException ( "Constructor not found for " + clazz ) ; } } catch ( ReflectiveOperationException reflectiveOperationException ) { throw new SQLException ( reflectiveOperationException ) ; }


signature:
public class ReflectProxyFactory { /** * { @ inheritDoc } */
@ Override public < T > T newProxy ( ProxyHandler < T > proxyHandler , ProxyClass proxyClass ) { } }

implementation: return ( T ) Proxy . newProxyInstance ( proxyClass . getClassLoader ( ) , proxyClass . getInterfaces ( ) , proxyHandler ) ;


signature:
public class ProxyClass { /** * Create proxy class
 * @ param < T > Expected proxy type
 * @ return Class of proxy for given classloader and interfaces */
public < T > Class < T > createClass ( ) { } }

implementation: return ( Class < T > ) Proxy . getProxyClass ( getClassLoader ( ) , getInterfaces ( ) ) ;


signature:
public class ProxyClass { /** * Create proxy constructor
 * Create proxy class
 * @ param < T > Expected proxy type
 * @ return Constructor of proxy for given classloader and interfaces */
public < T > Constructor < T > createConstructor ( ) { } }

implementation: try { return this . < T > createClass ( ) . getConstructor ( InvocationHandler . class ) ; } catch ( NoSuchMethodException noSuchMethodException ) { throw new ProxyException ( noSuchMethodException ) ; }


signature:
public class MetricHelper { /** * Start Timer when statement is executed
 * @ param query SQL query
 * @ return Started timer context or null */
public Timer . Context startStatementExecuteTimer ( Query query ) { } }

implementation: ensureSqlId ( query ) ; String name = metricNamingStrategy . getStatementExecuteTimer ( query . getSql ( ) , query . getSqlId ( ) ) ; return startTimer ( name ) ;


signature:
public class MetricHelper { /** * Start Timer when prepared statement is created
 * @ return Started timer context or null */
public Timer . Context startPreparedStatementLifeTimer ( Query query ) { } }

implementation: ensureSqlId ( query ) ; String name = metricNamingStrategy . getPreparedStatementLifeTimer ( query . getSql ( ) , query . getSqlId ( ) ) ; return startTimer ( name ) ;


signature:
public class MetricHelper { /** * Start Timer when prepared statement is created
 * @ return Started timer context or null */
public Timer . Context startPreparedStatementExecuteTimer ( Query query ) { } }

implementation: ensureSqlId ( query ) ; String name = metricNamingStrategy . getPreparedStatementExecuteTimer ( query . getSql ( ) , query . getSqlId ( ) ) ; return startTimer ( name ) ;


signature:
public class MetricHelper { /** * Start Timer when callable statement is created
 * @ return Started timer context or null */
public Timer . Context startCallableStatementLifeTimer ( Query query ) { } }

implementation: ensureSqlId ( query ) ; String name = metricNamingStrategy . getCallableStatementLifeTimer ( query . getSql ( ) , query . getSqlId ( ) ) ; return startTimer ( name ) ;


signature:
public class MetricHelper { /** * Start Timer when prepared statement is created
 * @ return Started timer context or null */
public Timer . Context startCallableStatementExecuteTimer ( Query query ) { } }

implementation: ensureSqlId ( query ) ; String name = metricNamingStrategy . getCallableStatementExecuteTimer ( query . getSql ( ) , query . getSqlId ( ) ) ; return startTimer ( name ) ;


signature:
public class MetricHelper { /** * Start Timer when result set is created
 * @ return Started timer context or null */
public Timer . Context startResultSetLifeTimer ( Query query ) { } }

implementation: ensureSqlId ( query ) ; String name = metricNamingStrategy . getResultSetLifeTimer ( query . getSql ( ) , query . getSqlId ( ) ) ; return startTimer ( name ) ;