Kiuwan supports +25 different technologies. And this supported set it’s continuously growing as we develop new parsers.
Below you can find the current set of supported technologies.
If you do not find a specific technology, or you have any doubts, please do not hesitate to contact us (Contact Kiuwan Technical Support)
List of Supported Technologies and associated File Extensions
Kiuwan provides built-in engines to process every different technology.
Below you can find the default mapping between technologies and file extensions.
When Kiuwan processes source files, it will apply the engine based on found file extension.
Language | Extensions |
---|---|
ABAP | abap,bsp |
ActionScript | as |
ASP.NET | asax,ascx,ashx,asmx,aspx,master |
C | c,h,pc |
Cobol | cob,cbl,cpy,pco |
C++ | h,hh,cpp,hpp,cc,pc |
C# | Cs |
HTML | htm,html,xhtml |
Informix | sql,4gl |
Java | java |
JavaScript | js |
JCL | jcl,prc |
JSP | jsp,jspx,xhtml |
Natural | nls,nlp,nlh,nlm,nss,nsp,nsh |
Objective C | h,m |
OracleForms | oforms |
PHP | php,php3,php4,php5,php6, phps,phtml |
PL-SQL | sql,sf,sps,spb,sp,fnc,spp,plsql,trg,st,prc,pks,pkb,pck |
PowerScript | sru,sra,srw,srf,srs,srm,srx |
Python | python,py |
RPG4 | rpg,rpg3,rpg4,rpgle,dspf,mbr |
Ruby | rb |
Transact-SQL | sql,tsql,sp |
VisualBasic 6 | bas,frm,cls |
VB.NET | vb |
Customization of File Extensions
The above mapping is the default used by Kiuwan, but it can be fully customized in several ways.
Fully customization can be done using Kiuwan Local Analyzer
The most common need for custom configuration is when your source files belong to a supported technology but they have an extension not in the list.
In this case, you can freely add that extension to Kiuwan.
For example, if you Cobol files have “ .cobol” extension, you could add “cobol” to Cobol’s extension list. In this way, when Kiuwan finds source files with “ .cobol” extension, it will trigger Cobol technology parser and apply Cobol rules.
This customization can be done at several scopes:
- System-wide (applicable to ALL the analyses of a Kiuwan installation)
- Application-specific (applicable to ALL the analyses of a specific Application)
System-wide Customization
If you want a certain extension-technology mapping to be applied to ALL the analyses, you can do it in these ways:
- Modify $AGENT_HOME/conf/ LanguageInfo.properties adding that extension to the right technology.
- Following the above example, set cobol=cob,cbl,cpy,pco,cobol
- Using Kiuwan Local Analyzer Graphical User Interface, open Extension Editor, add the new extension the right technology and when asked for saving, please select “Save as default”. This action will overwrite the above property file.
This customization will remain permanent for further analyses.
Application-specific Customization
If you want a certain extension-technology mapping to be applied to ALL the analyses of a SPECIFIC Application , you can do it in these ways:
- Modify $AGENT_HOME/conf/ apps/<appname>. properties adding that extension to the right technology.
- Following the above example, set cobol=cob,cbl,cpy,pco,cobol
- Using Kiuwan Local Analyzer Graphical User Interface, open Extension Editor, add the new extension the right technology and when asked for saving, please select “Save”. This action will overwrite the above property file.
This customization will remain permanent for further analyses.
File extensions matching more than one technology (.sql for example)
There are some special cases where the same extension (for example .sql) matches more than one technology (in this case, PL-SQL, Transact-SQL and Informix).
If you analyze your code in the Cloud or with Kiuwan Local Analyzer Graphical User Interface (GUI), you will be asked to select the technology to apply to that analysis. In that way, Kiuwan will apply selected technology to those files in that analysis.
But, if you run the analysis through Kiuwan Local Analyzer Command-Line Interface (CLI), by default the analysis will apply all the matching engines to those files, resulting in a waste to time and resources as well as producing confusing results (the whole set of rules for every technology will be run against the same sources).
In this case (CLI mode), we strongly suggest you to properly configure Kiuwan to avoid this situation and only apply the right Kiuwan engines.
Depending on the needs, there are some different solutions.
- System-wide (applicable to ALL the analyses of a Kiuwan installation)
- For example, in ALL my applications .sql files ALWAYS refer to PLSQL
- Edit $AGENT_HOME/conf/ analyzer.properties and delete “informix” and “transactsql” from supported.technologies property values
- Every analysis will take this configuration from now on.
- Analysis-specific (depending on the specific analysis being executed)
- In these cases, you must specify in command line the explicit set of technologies for that analysis. This can be done by specifying supported.technologies parameter to the appropriate values
- For example: agent.cmd [options] supported.technologies=”java,jsp, plsql”