Kiuwan supports +25 different technologies... and this set is 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 with a different extension.
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.
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)
Let's see how can these customizations be done.
System-wide Customization
If you want a certain extension-technology mapping to be applied to ALL the analyses you can do it in two different ways:
This mechanism allows to modify the extensions associated to the technologies, keeping the current set of applicable technologies.
You can do it by either of the following ways:
- Using Kiuwan Local Analyzer Graphical User Interface
- Open Extension Editor, add the new extension to the right technology and when asked for saving, please select “Save as default”.
- This action will overwrite LanguageInfo.properties file.
- Modify $AGENT_HOME/conf/LanguageInfo.properties adding that extension to the right technology.
- Following the above example, set cobol=cob,cbl,cpy,pco,cobol
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:
- Using Kiuwan Local Analyzer Graphical User Interface
- Open Extension Editor, add the new extension to the right technology and when asked for saving, please select “Save”.
- This action will create/overwrite the next property file.
- Modify $AGENT_HOME/conf/apps/<appname>.extensions.properties adding that extension to the right technology.
- Following the above example, set cobol=cob,cbl,cpy,pco,cobol
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 (applicable to 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”