validateBaseURL method
Validate base URL for environment
Implementation
ValidationResult validateBaseURL(String? url, SDKEnvironment environment) {
try {
final lib = PlatformLoader.loadCommons();
final validateFn = lib.lookupFunction<
Int32 Function(Pointer<Utf8>, Int32),
int Function(Pointer<Utf8>, int)>('rac_validate_base_url');
final urlPtr = url?.toNativeUtf8() ?? nullptr;
try {
final result = validateFn(urlPtr.cast<Utf8>(), _environmentToInt(environment));
return ValidationResult.fromCode(result);
} finally {
if (urlPtr != nullptr) calloc.free(urlPtr);
}
} catch (e) {
// Fallback validation
if (environment == SDKEnvironment.development) {
return ValidationResult.ok;
}
if (url == null || url.isEmpty) {
return ValidationResult.urlRequired;
}
if (!url.startsWith('http://') && !url.startsWith('https://')) {
return ValidationResult.urlInvalidScheme;
}
if (environment == SDKEnvironment.production && !url.startsWith('https://')) {
return ValidationResult.urlHttpsRequired;
}
return ValidationResult.ok;
}
}