This commit is contained in:
2025-07-28 14:45:47 +00:00
parent 2cded974a8
commit d627bc870e
7 changed files with 34 additions and 34 deletions

View File

@@ -1,4 +1,4 @@
// Core exports
export * from './types.js';
export * from './response.js';
export { SmartRequest, isUnixSocket, parseUnixSocketUrl } from './request.js';
export { CoreRequest, isUnixSocket, parseUnixSocketUrl } from './request.js';

View File

@@ -1,6 +1,6 @@
import * as plugins from './plugins.js';
import * as types from './types.js';
import { SmartResponse } from './response.js';
import { CoreResponse } from './response.js';
// Keep-alive agents for connection pooling
const httpAgent = new plugins.agentkeepalive.HttpAgent({
@@ -26,9 +26,9 @@ const httpsAgentKeepAliveFalse = new plugins.agentkeepalive.HttpsAgent({
});
/**
* Modern Request class that handles all HTTP/HTTPS requests
* Core Request class that handles all HTTP/HTTPS requests
*/
export class SmartRequest {
export class CoreRequest {
/**
* Tests if a URL is a unix socket
*/
@@ -63,17 +63,17 @@ export class SmartRequest {
}
/**
* Execute the request and return a SmartResponse
* Fire the request and return a CoreResponse
*/
async execute(): Promise<SmartResponse> {
const incomingMessage = await this.executeCore();
return new SmartResponse(incomingMessage, this.url);
async fire(): Promise<CoreResponse> {
const incomingMessage = await this.fireCore();
return new CoreResponse(incomingMessage, this.url);
}
/**
* Execute the request and return the raw IncomingMessage
* Fire the request and return the raw IncomingMessage
*/
async executeCore(): Promise<plugins.http.IncomingMessage> {
async fireCore(): Promise<plugins.http.IncomingMessage> {
const done = plugins.smartpromise.defer<plugins.http.IncomingMessage>();
// Parse URL
@@ -88,8 +88,8 @@ export class SmartRequest {
this.options.path = parsedUrl.path;
// Handle unix socket URLs
if (SmartRequest.isUnixSocket(this.url)) {
const { socketPath, path } = SmartRequest.parseUnixSocketUrl(this.options.path);
if (CoreRequest.isUnixSocket(this.url)) {
const { socketPath, path } = CoreRequest.parseUnixSocketUrl(this.options.path);
this.options.socketPath = socketPath;
this.options.path = path;
}
@@ -166,19 +166,19 @@ export class SmartRequest {
}
/**
* Static factory method to create and execute a request
* Static factory method to create and fire a request
*/
static async create(
url: string,
options: types.ICoreRequestOptions = {}
): Promise<SmartResponse> {
const request = new SmartRequest(url, options);
return request.execute();
): Promise<CoreResponse> {
const request = new CoreRequest(url, options);
return request.fire();
}
}
/**
* Convenience exports for backward compatibility
*/
export const isUnixSocket = SmartRequest.isUnixSocket;
export const parseUnixSocketUrl = SmartRequest.parseUnixSocketUrl;
export const isUnixSocket = CoreRequest.isUnixSocket;
export const parseUnixSocketUrl = CoreRequest.parseUnixSocketUrl;

View File

@@ -2,9 +2,9 @@ import * as plugins from './plugins.js';
import * as types from './types.js';
/**
* Modern Response class that provides a fetch-like API
* Core Response class that provides a fetch-like API
*/
export class SmartResponse<T = any> implements types.ICoreResponse<T> {
export class CoreResponse<T = any> implements types.ICoreResponse<T> {
private incomingMessage: plugins.http.IncomingMessage;
private bodyBufferPromise: Promise<Buffer> | null = null;
private consumed = false;