Skip to main content

%Compiler.Binding.Java

Class %Compiler.Binding.Java Extends %RegisteredObject [ System = 4 ]

This class handles creating the proxy Java class.

Methods

CreateProjection

ClassMethod CreateProjection(IRISClassName, projParams As %ArrayOfDataTypes, flushGlobals = 1, ByRef properties = {##class(%ArrayOfDataTypes).%New()}, ByRef qstruct As %String) As %Status

Creates the proxy Java class. IRISClassName is the full name of the IRIS class being projected (including package name). projParams is the array of projection parameters defined in the IRIS class. flushGlobals is set to 0 if createProjection() is called during the projection of another class, and 1 otherwise. It prevents looping projection calls, and also flushes out globals used during projection. properties is used by a subclass that is calling CreateProjection() on its leftmost superclass. It helps the subclass keep track of properties already existing in its superclass, so that it doesn't reproject those properties.

GetFile

ClassMethod GetFile(pathName As %String, className As %String, isInterface As %Boolean, projParams As %ArrayOfDataTypes, ByRef generateTime = "") As JavaFile

Returns a newly created stub file if the file specified by pathName and className doesn't exist. Otherwise, returns a temporary file that will be recopied and removed once projection succeeds.

CloseFile

ClassMethod CloseFile(pathName As %String, className As %String, file As JavaFile, projIsSuccessful = 0)

Close the file specified by pathName and className. If a temporary file exists for the class, copy its content to the right .java file, then delete the temporary file.

SetPackageDir

ClassMethod SetPackageDir(rootdir As %RawString, ByRef javaPackage As %RawString) As %RawString

Returns the pathname for the directory the projected Java file would be in.

CreatePackage

ClassMethod CreatePackage(file As JavaFile, javaPackage As %String)

Writes package info to Java file.

CreateDeclaration

ClassMethod CreateDeclaration(file As JavaFile, isAbstract As %Boolean, className As %String, classType As %String, super As %String, jdCreator As JavaDocCreator, description As %String)

Writes Java class declaration to the Java file.

CreateLocalVars

ClassMethod CreateLocalVars(file As JavaFile, className As %String, genSerialUid = 0)

CreateImports

ClassMethod CreateImports(file As JavaFile, tConverter As JavaTypeConverter, super As %String)

FlushGlobals

ClassMethod FlushGlobals(toFlush As %Boolean)