rflib-plugin 0.3.3 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -31,6 +31,9 @@ sf rflib logging apex instrument --sourcepath force-app --dryrun
31
31
 
32
32
  # Format modified files with Prettier
33
33
  sf rflib logging apex instrument --sourcepath force-app --prettier
34
+
35
+ # Skip instrumenting files where logging is already present
36
+ sf rflib logging apex instrument --sourcepath force-app --skip-instrumented
34
37
  ```
35
38
 
36
39
  #### Command Options
@@ -38,6 +41,7 @@ sf rflib logging apex instrument --sourcepath force-app --prettier
38
41
  - `--sourcepath (-s)`: Directory containing Apex classes to instrument
39
42
  - `--dryrun (-d)`: Preview changes without modifying files
40
43
  - `--prettier (-p)`: Format modified files using Prettier
44
+ - `--skip-instrumented`: Do not instrument files where RFLIB logging is already present
41
45
 
42
46
  ### `sf rflib logging lwc instrument`
43
47
 
@@ -52,6 +56,9 @@ sf rflib logging lwc instrument --sourcepath force-app --dryrun
52
56
 
53
57
  # Add logging and format code
54
58
  sf rflib logging lwc instrument --sourcepath force-app --prettier
59
+
60
+ # Skip instrumenting files where logging is already present
61
+ sf rflib logging lwc instrument --sourcepath force-app --skip-instrumented
55
62
  ```
56
63
 
57
64
  #### Command Options
@@ -59,6 +66,7 @@ sf rflib logging lwc instrument --sourcepath force-app --prettier
59
66
  - `--sourcepath (-s)`: Directory containing Apex classes to instrument
60
67
  - `--dryrun (-d)`: Preview changes without modifying files
61
68
  - `--prettier (-p)`: Format modified files using Prettier
69
+ - `--skip-instrumented`: Do not instrument files where RFLIB logging is already present
62
70
 
63
71
  ### `sf rflib logging aura instrument`
64
72
 
@@ -73,6 +81,9 @@ sf rflib logging aura instrument --sourcepath force-app --dryrun
73
81
 
74
82
  # Add logging and format code
75
83
  sf rflib logging aura instrument --sourcepath force-app --prettier
84
+
85
+ # Skip instrumenting files where logging is already present
86
+ sf rflib logging aura instrument --sourcepath force-app --skip-instrumented
76
87
  ```
77
88
 
78
89
  #### Command Options
@@ -80,6 +91,7 @@ sf rflib logging aura instrument --sourcepath force-app --prettier
80
91
  - `--sourcepath (-s)`: Directory containing Apex classes to instrument
81
92
  - `--dryrun (-d)`: Preview changes without modifying files
82
93
  - `--prettier (-p)`: Format modified files using Prettier
94
+ - `--skip-instrumented`: Do not instrument files where RFLIB logging is already present
83
95
 
84
96
  ## Contributing
85
97
 
@@ -1,9 +1,9 @@
1
1
  import { SfCommand } from '@salesforce/sf-plugins-core';
2
- export type RflibLoggingApexInstrumentResult = {
2
+ export interface RflibLoggingApexInstrumentResult {
3
3
  processedFiles: number;
4
4
  modifiedFiles: number;
5
5
  formattedFiles: number;
6
- };
6
+ }
7
7
  export default class RflibLoggingApexInstrument extends SfCommand<RflibLoggingApexInstrumentResult> {
8
8
  static readonly summary: string;
9
9
  static readonly description: string;
@@ -13,19 +13,10 @@ export default class RflibLoggingApexInstrument extends SfCommand<RflibLoggingAp
13
13
  dryrun: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
14
  prettier: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
15
  'no-if': import("@oclif/core/interfaces").BooleanFlag<boolean>;
16
+ 'skip-instrumented': import("@oclif/core/interfaces").BooleanFlag<boolean>;
16
17
  };
17
18
  private logger;
18
- private processedFiles;
19
- private modifiedFiles;
20
- private formattedFiles;
21
- private readonly prettierConfig;
22
- private static isComplexType;
23
- private static detectExistingLogger;
24
- private static addLoggerDeclaration;
25
- private static processParameters;
26
- private static processMethodDeclarations;
27
- private static processCatchBlocks;
28
- private static processIfStatements;
19
+ private readonly stats;
29
20
  run(): Promise<RflibLoggingApexInstrumentResult>;
30
21
  private processDirectory;
31
22
  private processTestFile;
@@ -1,66 +1,26 @@
1
1
  /* eslint-disable no-await-in-loop */
2
- /* eslint-disable @typescript-eslint/quotes */
3
- /* eslint-disable sf-plugin/no-missing-messages */
4
2
  import * as fs from 'node:fs';
5
3
  import * as path from 'node:path';
6
4
  import { SfCommand, Flags } from '@salesforce/sf-plugins-core';
7
5
  import { Messages, Logger } from '@salesforce/core';
8
- // eslint-disable-next-line import/no-extraneous-dependencies
9
6
  import * as prettier from 'prettier';
10
7
  Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
11
8
  const messages = Messages.loadMessages('rflib-plugin', 'rflib.logging.apex.instrument');
12
- const methodRegex = /(@AuraEnabled\s*[\s\S]*?)?\b(public|private|protected|global)\s+(static\s+)?(?:(\w+(?:\s*<(?:[^<>]|<[^<>]*>)*>)?)|void)\s+(\w+)\s*\(([\s\S]*?)\)\s*{/g;
13
- const classRegex = /\bclass\s+\w+\s*{/;
14
- const classLevelLoggerRegex = /\bprivate\s+(?:static\s+)?(?:final\s+)?rflib_Logger\s+(\w+)\b/;
15
- const genericArgsRegex = /<[^>]+>/g;
16
- const catchRegex = /catch\s*\(\s*\w+\s+(\w+)\s*\)\s*{/g;
17
- const testSetupRegex = /@TestSetup\s+((public|private|protected|global)s+)?(?:static\s+)?void\s+(\w+)\s*\([^)]*\)\s*{/g;
18
- const ifStatementRegex = /if\s*\((.*?)\)\s*(?:{([^]*?(?:(?<!{){(?:[^]*?)}(?!})[^]*?)*)}|([^{].*?)(?=\s*(?:;|$));)/g;
19
- const elseRegex = /}\s*else(?!\s+if\b)\s*(?:{((?:[^{}]|{(?:[^{}]|{[^{}]*})*})*)}|([^{].*?)(?=\n|;|$))/g;
20
- const PRIMITIVE_TYPES = new Set([
21
- 'STRING',
22
- 'INTEGER',
23
- 'LONG',
24
- 'DECIMAL',
25
- 'DOUBLE',
26
- 'BOOLEAN',
27
- 'DATE',
28
- 'DATETIME',
29
- 'TIME',
30
- 'ID',
31
- ]);
32
- export default class RflibLoggingApexInstrument extends SfCommand {
33
- static summary = messages.getMessage('summary');
34
- static description = messages.getMessage('description');
35
- static examples = messages.getMessages('examples');
36
- static flags = {
37
- sourcepath: Flags.string({
38
- summary: messages.getMessage('flags.sourcepath.summary'),
39
- description: messages.getMessage('flags.sourcepath.description'),
40
- char: 's',
41
- required: true,
42
- }),
43
- dryrun: Flags.boolean({
44
- summary: messages.getMessage('flags.dryrun.summary'),
45
- description: messages.getMessage('flags.dryrun.description'),
46
- char: 'd',
47
- default: false,
48
- }),
49
- prettier: Flags.boolean({
50
- summary: messages.getMessage('flags.prettier.summary'),
51
- description: messages.getMessage('flags.prettier.description'),
52
- char: 'p',
53
- default: false,
54
- }),
55
- 'no-if': Flags.boolean({
56
- summary: messages.getMessage('flags.no-if.summary'),
57
- }),
58
- };
59
- logger;
60
- processedFiles = 0;
61
- modifiedFiles = 0;
62
- formattedFiles = 0;
63
- prettierConfig = {
9
+ class ApexInstrumentationService {
10
+ static TEST_SETUP_REGEX = /@TestSetup\s+((public|private|protected|global)s+)?(?:static\s+)?void\s+(\w+)\s*\([^)]*\)\s*{/g;
11
+ static METHOD_REGEX = /(@AuraEnabled\s*[\s\S]*?)?\b(public|private|protected|global)\s+(static\s+)?(?:(\w+(?:\s*<(?:[^<>]|<[^<>]*>)*>)?)|void)\s+(\w+)\s*\(([\s\S]*?)\)\s*{/g;
12
+ static CLASS_REGEX = /\bclass\s+\w+\s*{/;
13
+ static CLASS_LOGGER_REGEX = /\bprivate\s+(?:static\s+)?(?:final\s+)?rflib_Logger\s+(\w+)\b/;
14
+ static GENERIC_ARGS_REGEX = /<[^>]+>/g;
15
+ static CATCH_REGEX = /catch\s*\(\s*\w+\s+(\w+)\s*\)\s*{/g;
16
+ static IF_STATEMENT_REGEX = /if\s*\((.*?)\)\s*(?:{([^]*?(?:(?<!{){(?:[^]*?)}(?!})[^]*?)*)}|([^{].*?)(?=\s*(?:;|$));)/g;
17
+ static ELSE_REGEX = /}\s*else(?!\s+if\b)\s*(?:{((?:[^{}]|{(?:[^{}]|{[^{}]*})*})*)}|([^{].*?)(?=\n|;|$))/g;
18
+ static IS_INSTRUMENTED_REGEX = /(\brflib_Logger\b|\brflib_TestUtil\b)/;
19
+ static PRIMITIVE_TYPES = new Set([
20
+ 'STRING', 'INTEGER', 'LONG', 'DECIMAL', 'DOUBLE', 'BOOLEAN',
21
+ 'DATE', 'DATETIME', 'TIME', 'ID'
22
+ ]);
23
+ static PRETTIER_CONFIG = {
64
24
  parser: 'apex',
65
25
  plugins: ['prettier-plugin-apex'],
66
26
  printWidth: 120,
@@ -68,77 +28,65 @@ export default class RflibLoggingApexInstrument extends SfCommand {
68
28
  useTabs: false,
69
29
  singleQuote: true,
70
30
  };
71
- static isComplexType(paramType) {
72
- return (paramType.includes('<') ||
73
- paramType.includes('[') ||
74
- paramType === 'Object' ||
75
- !PRIMITIVE_TYPES.has(paramType.toUpperCase()));
31
+ static async formatContent(content) {
32
+ try {
33
+ return await prettier.format(content, this.PRETTIER_CONFIG);
34
+ }
35
+ catch (error) {
36
+ if (error instanceof Error) {
37
+ throw new Error(`Formatting failed: ${error.message}`);
38
+ }
39
+ throw new Error('Formatting failed with unknown error');
40
+ }
41
+ }
42
+ static isInstrumented(content) {
43
+ return this.IS_INSTRUMENTED_REGEX.test(content);
76
44
  }
77
- static detectExistingLogger(content) {
78
- const match = content.match(classLevelLoggerRegex);
45
+ static detectLogger(content) {
46
+ const match = content.match(this.CLASS_LOGGER_REGEX);
79
47
  return {
80
- exists: classLevelLoggerRegex.test(content),
81
- loggerVariableName: match ? match[1] : 'LOGGER',
48
+ exists: this.CLASS_LOGGER_REGEX.test(content),
49
+ variableName: match ? match[1] : 'LOGGER'
82
50
  };
83
51
  }
84
52
  static addLoggerDeclaration(content, className) {
85
- const { exists, loggerVariableName } = RflibLoggingApexInstrument.detectExistingLogger(content);
53
+ const { exists, variableName } = this.detectLogger(content);
86
54
  if (!exists) {
87
- const loggerDeclaration = `private static final rflib_Logger ${loggerVariableName} = rflib_LoggerUtil.getFactory().createLogger('${className}');`;
88
- return content.replace(classRegex, `$&\n ${loggerDeclaration}`);
55
+ const loggerDecl = `private static final rflib_Logger ${variableName} = rflib_LoggerUtil.getFactory().createLogger('${className}');`;
56
+ return content.replace(this.CLASS_REGEX, `$&\n ${loggerDecl}`);
89
57
  }
90
58
  return content;
91
59
  }
92
- static processParameters(args) {
93
- const parameters = args
94
- ? args
95
- .replaceAll(genericArgsRegex, '')
96
- .split(',')
97
- .map((param) => param.trim())
98
- : [];
99
- const logArgs = parameters.length > 0 && parameters[0] !== ''
100
- ? `, new Object[] { ${parameters
101
- .map((p) => {
102
- const parts = p.split(' ');
103
- const paramType = parts[0];
104
- const paramName = parts.length > 1 ? parts[1] : parts[0];
105
- return this.isComplexType(paramType) ? `JSON.serialize(${paramName})` : paramName;
106
- })
107
- .join(', ')} }`
108
- : '';
109
- return { paramList: parameters, logArgs };
110
- }
111
60
  static processMethodDeclarations(content, loggerName) {
112
- return content.replace(methodRegex, (match, auraEnabled, access, isStatic, returnType, methodName, args) => {
113
- const { paramList, logArgs } = RflibLoggingApexInstrument.processParameters(args);
114
- let newMethod = match + '\n';
115
- newMethod += ` ${loggerName}.info('${methodName}(${paramList.map((_, i) => `{${i}}`).join(', ')})'${logArgs});\n`;
116
- return newMethod;
61
+ return content.replace(this.METHOD_REGEX, (match, ...args) => {
62
+ const methodInfo = {
63
+ auraEnabled: args[0],
64
+ access: args[1],
65
+ isStatic: args[2],
66
+ returnType: args[3],
67
+ methodName: args[4],
68
+ args: args[5]
69
+ };
70
+ const { paramList, logArgs } = this.processParameters(methodInfo.args);
71
+ return `${match}\n ${loggerName}.info('${methodInfo.methodName}(${paramList.map((_, i) => `{${i}}`).join(', ')})'${logArgs});\n`;
117
72
  });
118
73
  }
119
74
  static processCatchBlocks(content, loggerName) {
120
- return content.replace(catchRegex, (match, exceptionVar, offset) => {
121
- // Get content before catch block
75
+ return content.replace(this.CATCH_REGEX, (match, exceptionVar, offset) => {
122
76
  const contentBeforeCatch = content.substring(0, offset);
123
- // Find all method declarations before this catch block
124
- const methodMatches = [...contentBeforeCatch.matchAll(methodRegex)];
125
- // Get last method match (closest to catch block)
77
+ const methodMatches = [...contentBeforeCatch.matchAll(this.METHOD_REGEX)];
126
78
  const lastMethodMatch = methodMatches[methodMatches.length - 1];
127
- // Extract method name from match or use 'unknown'
128
- const methodName = lastMethodMatch
129
- ? lastMethodMatch[5] // Group 4 contains method name in methodRegex
130
- : 'unknown';
79
+ const methodName = lastMethodMatch ? lastMethodMatch[5] : 'unknown';
131
80
  return `${match}\n ${loggerName}.error('An error occurred in ${methodName}()', ${exceptionVar.trim()});`;
132
81
  });
133
82
  }
134
83
  static processIfStatements(content, loggerName) {
135
84
  const conditions = [];
136
- // Process if statements and store conditions with positions
137
- let modified = content.replace(ifStatementRegex, (match, condition, blockBody, singleLineBody, offset) => {
85
+ let modified = content.replace(this.IF_STATEMENT_REGEX, (match, condition, blockBody, singleLineBody, offset) => {
138
86
  const cleanedUpCondition = condition.trim().replaceAll("'", "\\'");
139
87
  conditions.push({
140
88
  condition: cleanedUpCondition,
141
- position: offset,
89
+ position: offset
142
90
  });
143
91
  const logStatement = `${loggerName}.debug('if (${cleanedUpCondition})');\n `;
144
92
  if (blockBody) {
@@ -150,11 +98,9 @@ export default class RflibLoggingApexInstrument extends SfCommand {
150
98
  }
151
99
  return match;
152
100
  });
153
- // Process else blocks using nearest if condition
154
- modified = modified.replace(elseRegex, (match, blockBody, singleLineBody, offset) => {
155
- // Find last if statement before this else
101
+ modified = modified.replace(this.ELSE_REGEX, (match, blockBody, singleLineBody, offset) => {
156
102
  const nearestIf = conditions
157
- .filter((c) => c.position < offset)
103
+ .filter((c) => c.position < (offset ?? 0))
158
104
  .reduce((prev, curr) => (!prev || curr.position > prev.position ? curr : prev));
159
105
  const logStatement = nearestIf
160
106
  ? `${loggerName}.debug('else for if (${nearestIf.condition})');\n `
@@ -169,57 +115,122 @@ export default class RflibLoggingApexInstrument extends SfCommand {
169
115
  });
170
116
  return modified;
171
117
  }
118
+ static isComplexType(paramType) {
119
+ return paramType.includes('<') ||
120
+ paramType.includes('[') ||
121
+ paramType === 'Object' ||
122
+ !this.PRIMITIVE_TYPES.has(paramType.toUpperCase());
123
+ }
124
+ static processParameters(args) {
125
+ const parameters = args
126
+ ? args.replaceAll(this.GENERIC_ARGS_REGEX, '')
127
+ .split(',')
128
+ .map((param) => param.trim())
129
+ : [];
130
+ const logArgs = parameters.length > 0 && parameters[0] !== ''
131
+ ? `, new Object[] { ${parameters
132
+ .map((p) => {
133
+ const [paramType, ...rest] = p.split(' ');
134
+ const paramName = rest.length > 0 ? rest.join(' ') : paramType;
135
+ return this.isComplexType(paramType) ? `JSON.serialize(${paramName})` : paramName;
136
+ })
137
+ .join(', ')} }`
138
+ : '';
139
+ return { paramList: parameters, logArgs };
140
+ }
141
+ }
142
+ export default class RflibLoggingApexInstrument extends SfCommand {
143
+ static summary = messages.getMessage('summary');
144
+ static description = messages.getMessage('description');
145
+ static examples = messages.getMessages('examples');
146
+ static flags = {
147
+ sourcepath: Flags.string({
148
+ summary: messages.getMessage('flags.sourcepath.summary'),
149
+ description: messages.getMessage('flags.sourcepath.description'),
150
+ char: 's',
151
+ required: true,
152
+ }),
153
+ dryrun: Flags.boolean({
154
+ summary: messages.getMessage('flags.dryrun.summary'),
155
+ description: messages.getMessage('flags.dryrun.description'),
156
+ char: 'd',
157
+ default: false,
158
+ }),
159
+ prettier: Flags.boolean({
160
+ summary: messages.getMessage('flags.prettier.summary'),
161
+ description: messages.getMessage('flags.prettier.description'),
162
+ char: 'p',
163
+ default: false,
164
+ }),
165
+ 'no-if': Flags.boolean({
166
+ summary: messages.getMessage('flags.no-if.summary'),
167
+ description: messages.getMessage('flags.no-if.description'),
168
+ default: false,
169
+ }),
170
+ 'skip-instrumented': Flags.boolean({
171
+ summary: messages.getMessage('flags.skip-instrumented.summary'),
172
+ description: messages.getMessage('flags.skip-instrumented.description'),
173
+ default: false,
174
+ }),
175
+ };
176
+ logger;
177
+ stats = {
178
+ processedFiles: 0,
179
+ modifiedFiles: 0,
180
+ formattedFiles: 0
181
+ };
172
182
  async run() {
173
183
  this.logger = await Logger.child(this.ctor.name);
174
184
  const startTime = Date.now();
175
185
  const { flags } = await this.parse(RflibLoggingApexInstrument);
176
186
  const sourcePath = flags.sourcepath;
177
187
  const isDryRun = flags.dryrun;
178
- const instrumentationFlags = {
188
+ const instrumentationOpts = {
179
189
  prettier: flags.prettier,
180
190
  noIf: flags['no-if'],
191
+ skipInstrumented: flags['skip-instrumented']
181
192
  };
182
193
  this.log(`Scanning Apex classes in ${sourcePath} and sub directories`);
183
- this.logger.debug(`Dry run mode: ${flags.dryrun}`);
194
+ this.logger.debug(`Dry run mode: ${isDryRun}`);
184
195
  this.spinner.start('Running...');
185
- await this.processDirectory(sourcePath, isDryRun, instrumentationFlags);
196
+ await this.processDirectory(sourcePath, isDryRun, instrumentationOpts);
186
197
  this.spinner.stop();
187
198
  const duration = Date.now() - startTime;
188
199
  this.logger.debug(`Completed instrumentation in ${duration}ms`);
189
- this.log(`\nInstrumentation complete.`);
190
- this.log(`Processed files: ${this.processedFiles}`);
191
- this.log(`Modified files: ${this.modifiedFiles}`);
192
- this.log(`Formatted files: ${this.formattedFiles}`);
193
- return {
194
- processedFiles: this.processedFiles,
195
- modifiedFiles: this.modifiedFiles,
196
- formattedFiles: this.formattedFiles,
197
- };
200
+ this.log('\nInstrumentation complete.');
201
+ this.log(`Processed files: ${this.stats.processedFiles}`);
202
+ this.log(`Modified files: ${this.stats.modifiedFiles}`);
203
+ this.log(`Formatted files: ${this.stats.formattedFiles}`);
204
+ return { ...this.stats };
198
205
  }
199
- async processDirectory(dirPath, isDryRun, flags) {
206
+ async processDirectory(dirPath, isDryRun, instrumentationOpts) {
200
207
  this.logger.debug(`Processing directory: ${dirPath}`);
201
208
  const files = await fs.promises.readdir(dirPath);
202
209
  for (const file of files) {
203
210
  const filePath = path.join(dirPath, file);
204
211
  const stat = await fs.promises.stat(filePath);
205
212
  if (stat.isDirectory()) {
206
- await this.processDirectory(filePath, isDryRun, flags);
213
+ await this.processDirectory(filePath, isDryRun, instrumentationOpts);
207
214
  }
208
215
  else if (file.endsWith('Test.cls')) {
209
- await this.processTestFile(filePath, isDryRun);
216
+ await this.processTestFile(filePath, isDryRun, instrumentationOpts);
210
217
  }
211
218
  else if (file.endsWith('.cls')) {
212
- await this.instrumentApexClass(filePath, isDryRun, flags);
219
+ await this.instrumentApexClass(filePath, isDryRun, instrumentationOpts);
213
220
  }
214
221
  }
215
222
  }
216
- async processTestFile(filePath, isDryRun) {
223
+ async processTestFile(filePath, isDryRun, instrumentationOpts) {
217
224
  this.logger.debug(`Processing test file: ${filePath}`);
218
225
  let content = await fs.promises.readFile(filePath, 'utf8');
219
226
  const originalContent = content;
220
- content = content.replace(testSetupRegex, (match) => `${match}\n rflib_TestUtil.prepareLoggerForUnitTests();`);
227
+ if (instrumentationOpts.skipInstrumented && ApexInstrumentationService.isInstrumented(content)) {
228
+ this.logger.info(`Skipping instrumented test class: ${filePath}`);
229
+ return;
230
+ }
231
+ content = content.replace(ApexInstrumentationService.TEST_SETUP_REGEX, (match) => `${match}\n rflib_TestUtil.prepareLoggerForUnitTests();`);
221
232
  if (content !== originalContent) {
222
- this.modifiedFiles++;
233
+ this.stats.modifiedFiles++;
223
234
  if (!isDryRun) {
224
235
  await fs.promises.writeFile(filePath, content);
225
236
  this.logger.info(`Modified test file: ${filePath}`);
@@ -229,29 +240,34 @@ export default class RflibLoggingApexInstrument extends SfCommand {
229
240
  }
230
241
  }
231
242
  }
232
- async instrumentApexClass(filePath, isDryRun, flags) {
233
- const usePrettier = flags.prettier;
243
+ async instrumentApexClass(filePath, isDryRun, instrumentationOpts) {
234
244
  const className = path.basename(filePath, '.cls');
235
245
  this.logger.debug(`Processing class: ${className}`);
236
246
  try {
237
- this.processedFiles++;
247
+ this.stats.processedFiles++;
238
248
  let content = await fs.promises.readFile(filePath, 'utf8');
239
249
  const originalContent = content;
240
- const { loggerVariableName } = RflibLoggingApexInstrument.detectExistingLogger(content);
241
- content = RflibLoggingApexInstrument.addLoggerDeclaration(content, className);
242
- content = RflibLoggingApexInstrument.processMethodDeclarations(content, loggerVariableName);
243
- content = RflibLoggingApexInstrument.processCatchBlocks(content, loggerVariableName);
244
- if (!flags.noIf) {
245
- content = RflibLoggingApexInstrument.processIfStatements(content, loggerVariableName);
250
+ if (instrumentationOpts.skipInstrumented && ApexInstrumentationService.isInstrumented(content)) {
251
+ this.logger.info(`Skipping instrumented class: ${className}`);
252
+ return;
253
+ }
254
+ const { variableName } = ApexInstrumentationService.detectLogger(content);
255
+ content = ApexInstrumentationService.addLoggerDeclaration(content, className);
256
+ content = ApexInstrumentationService.processMethodDeclarations(content, variableName);
257
+ content = ApexInstrumentationService.processCatchBlocks(content, variableName);
258
+ if (!instrumentationOpts.noIf) {
259
+ content = ApexInstrumentationService.processIfStatements(content, variableName);
246
260
  }
247
261
  if (content !== originalContent) {
248
- this.modifiedFiles++;
262
+ this.stats.modifiedFiles++;
249
263
  if (!isDryRun) {
250
264
  try {
251
- const finalContent = usePrettier ? await prettier.format(content, this.prettierConfig) : content;
265
+ const finalContent = instrumentationOpts.prettier
266
+ ? await ApexInstrumentationService.formatContent(content)
267
+ : content;
252
268
  await fs.promises.writeFile(filePath, finalContent);
253
- if (usePrettier) {
254
- this.formattedFiles++;
269
+ if (instrumentationOpts.prettier) {
270
+ this.stats.formattedFiles++;
255
271
  this.logger.info(`Modified and formatted: ${filePath}`);
256
272
  }
257
273
  else {
@@ -259,12 +275,7 @@ export default class RflibLoggingApexInstrument extends SfCommand {
259
275
  }
260
276
  }
261
277
  catch (error) {
262
- if (error instanceof Error) {
263
- this.logger.warn(`Failed to format ${filePath}: ${error.message}`);
264
- }
265
- else {
266
- this.logger.warn(`Failed to format ${filePath}: ${String(error)}`);
267
- }
278
+ this.logger.warn(`Failed to format ${filePath}: ${error instanceof Error ? error.message : String(error)}`);
268
279
  await fs.promises.writeFile(filePath, content);
269
280
  this.logger.info(`Modified without formatting: ${filePath}`);
270
281
  }
@@ -1 +1 @@
1
- {"version":3,"file":"instrument.js","sourceRoot":"","sources":["../../../../../src/commands/rflib/logging/apex/instrument.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instrument.js","sourceRoot":"","sources":["../../../../../src/commands/rflib/logging/apex/instrument.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { SfCommand } from '@salesforce/sf-plugins-core';
2
- export type RflibLoggingAuraInstrumentResult = {
2
+ export interface RflibLoggingAuraInstrumentResult {
3
3
  processedFiles: number;
4
4
  modifiedFiles: number;
5
5
  formattedFiles: number;
6
- };
6
+ }
7
7
  export default class RflibLoggingAuraInstrument extends SfCommand<RflibLoggingAuraInstrumentResult> {
8
8
  static readonly summary: string;
9
9
  static readonly description: string;
@@ -13,16 +13,10 @@ export default class RflibLoggingAuraInstrument extends SfCommand<RflibLoggingAu
13
13
  dryrun: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
14
  prettier: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
15
  'no-if': import("@oclif/core/interfaces").BooleanFlag<boolean>;
16
+ 'skip-instrumented': import("@oclif/core/interfaces").BooleanFlag<boolean>;
16
17
  };
17
18
  private logger;
18
- private processedFiles;
19
- private modifiedFiles;
20
- private formattedFiles;
21
- private readonly prettierConfig;
22
- private static processMethodLogging;
23
- private static processPromiseChains;
24
- private static processTryCatchBlocks;
25
- private static processIfStatements;
19
+ private readonly stats;
26
20
  run(): Promise<RflibLoggingAuraInstrumentResult>;
27
21
  private processDirectory;
28
22
  private processAuraComponents;