@@ -14,6 +14,7 @@ component aliases="-v,--version" extends="base" {
1414 */
1515 public void function run () {
1616 try {
17+ requireWheelsApp (getCWD ());
1718 // Get server information
1819 local .serverInfo = getServerInfo ();
1920
@@ -33,25 +34,55 @@ component aliases="-v,--version" extends="base" {
3334 name = " Unknown" ,
3435 version = " Unknown"
3536 };
36-
37+
3738 try {
38- // Try to get server info
39- local .serverDetails = serverService .resolveServerDetails (serverProps = {webroot = getCWD ()});
40- if (StructKeyExists (local .serverDetails , " serverInfo" )) {
41- local .result .name = local .serverDetails .serverInfo .name ?: " Unknown" ;
42- local .result .version = local .serverDetails .serverInfo .version ?: " Unknown" ;
39+ local .serverDetails = serverService .resolveServerDetails ({});
40+
41+ // Check if SERVERINFO exists (it contains engineName and engineVersion)
42+ if (StructKeyExists (local .serverDetails , " SERVERINFO" )) {
43+ local .serverInfo = local .serverDetails .SERVERINFO ;
44+
45+ if (StructKeyExists (local .serverInfo , " engineName" ) && StructKeyExists (local .serverInfo , " engineVersion" )) {
46+ // Get engine name
47+ if (local .serverInfo .engineName == " lucee" ) {
48+ local .result .name = " Lucee" ;
49+ } else if (local .serverInfo .engineName == " adobe" ) {
50+ local .result .name = " Adobe ColdFusion" ;
51+ } else if (local .serverInfo .engineName == " boxlang" ) {
52+ local .result .name = " BoxLang" ;
53+ } else {
54+ local .result .name = local .serverInfo .engineName ;
55+ }
56+
57+ // Get version
58+ if (Len (local .serverInfo .engineVersion ) && local .serverInfo .engineVersion ! = " Unknown" ) {
59+ local .result .version = local .serverInfo .engineVersion ;
60+ }
61+
62+ return local .result ;
63+ }
4364 }
4465 } catch (any e ) {
45- // Fall back to basic detection
66+ // Continue to direct server detection
67+ }
68+
69+ // Fallback to direct server scope detection
70+ try {
4671 if (StructKeyExists (server , " lucee" )) {
4772 local .result .name = " Lucee" ;
48- local .result .version = server .lucee .version ;
73+ if (StructKeyExists (server .lucee , " version" )) {
74+ local .result .version = server .lucee .version ;
75+ }
4976 } else if (StructKeyExists (server , " coldfusion" )) {
50- local .result .name = server .coldfusion .productname ;
51- local .result .version = server .coldfusion .productversion ;
77+ local .result .name = server .coldfusion .productname ?: " Adobe ColdFusion" ;
78+ if (StructKeyExists (server .coldfusion , " productversion" )) {
79+ local .result .version = server .coldfusion .productversion ;
80+ }
5281 }
82+ } catch (any e ) {
83+ // Use defaults
5384 }
54-
85+
5586 return local .result ;
5687 }
5788
0 commit comments