Class UrlResource
java.lang.Object
cloud.opencode.base.classloader.resource.AbstractResource
cloud.opencode.base.classloader.resource.UrlResource
- All Implemented Interfaces:
Resource
URL Resource - Resource from URL
URL 资源 - 从 URL 加载的资源
Represents a resource that can be loaded from a URL.
表示可以从 URL 加载的资源。
Features | 主要功能:
- Load resources from URL - 从 URL 加载资源
- Support HTTP/HTTPS/File protocols - 支持 HTTP/HTTPS/File 协议
- Connection configuration - 连接配置
Usage Examples | 使用示例:
Resource resource = new UrlResource("https://example.com/config.yml");
Resource resource = new UrlResource(new URL("https://example.com/config.yml"));
Security | 安全性:
- Thread-safe: Yes - 线程安全: 是
- Null-safe: Yes - 空值安全: 是
- Since:
- JDK 25, opencode-base-classloader V1.0.0
- Author:
- Leon Soo www.LeonSoo.com
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionUrlResource(String url) Create URL resource from URL string 从 URL 字符串创建 URL 资源UrlResource(URI uri) Create URL resource from URI 从 URI 创建 URL 资源UrlResource(URL url) Create URL resource from URL 从 URL 创建 URL 资源 -
Method Summary
Modifier and TypeMethodDescriptionlongGet content length in bytes 获取内容长度(字节)createRelative(String relativePath) Create relative resource 创建相对资源booleanexists()Check if resource exists 检查资源是否存在Get resource description 获取资源描述getFile()Get file if resource is file-based 获取文件(如果是文件资源)Get filename 获取文件名Get input stream for resource 获取资源的输入流getPath()Get path if resource is file-based 获取路径(如果是文件资源)getUri()Get resource URI 获取资源 URIgetUrl()Get resource URL 获取资源 URLbooleanisFile()Check if resource is a file 检查资源是否为文件longGet last modified timestamp 获取最后修改时间戳Methods inherited from class AbstractResource
equals, hashCode, isReadable, toString
-
Constructor Details
-
UrlResource
Create URL resource from URL string 从 URL 字符串创建 URL 资源- Parameters:
url- URL string | URL 字符串- Throws:
MalformedURLException- if URL is invalid | URL 无效时抛出
-
UrlResource
Create URL resource from URL 从 URL 创建 URL 资源- Parameters:
url- URL object | URL 对象
-
UrlResource
Create URL resource from URI 从 URI 创建 URL 资源- Parameters:
uri- URI object | URI 对象- Throws:
MalformedURLException- if URI cannot be converted to URL | URI 无法转换为 URL 时抛出
-
-
Method Details
-
exists
public boolean exists()Description copied from interface:ResourceCheck if resource exists 检查资源是否存在- Specified by:
existsin interfaceResource- Overrides:
existsin classAbstractResource- Returns:
- true if exists | 存在返回 true
-
isFile
public boolean isFile()Description copied from interface:ResourceCheck if resource is a file 检查资源是否为文件- Specified by:
isFilein interfaceResource- Overrides:
isFilein classAbstractResource- Returns:
- true if is file | 是文件返回 true
-
getInputStream
Description copied from interface:ResourceGet input stream for resource 获取资源的输入流- Returns:
- input stream | 输入流
- Throws:
IOException- if cannot open stream | 无法打开流时抛出
-
getUrl
Description copied from interface:ResourceGet resource URL 获取资源 URL- Returns:
- resource URL | 资源 URL
- Throws:
IOException- if cannot get URL | 无法获取 URL 时抛出
-
getUri
Description copied from interface:ResourceGet resource URI 获取资源 URI- Specified by:
getUriin interfaceResource- Overrides:
getUriin classAbstractResource- Returns:
- resource URI | 资源 URI
- Throws:
IOException- if cannot get URI | 无法获取 URI 时抛出
-
getFile
-
getPath
-
contentLength
Description copied from interface:ResourceGet content length in bytes 获取内容长度(字节)- Specified by:
contentLengthin interfaceResource- Overrides:
contentLengthin classAbstractResource- Returns:
- content length or -1 if unknown | 内容长度,未知时返回 -1
- Throws:
IOException- if cannot determine length | 无法确定长度时抛出
-
lastModified
Description copied from interface:ResourceGet last modified timestamp 获取最后修改时间戳- Specified by:
lastModifiedin interfaceResource- Overrides:
lastModifiedin classAbstractResource- Returns:
- last modified time in milliseconds or 0 if unknown | 最后修改时间(毫秒),未知时返回 0
- Throws:
IOException- if cannot determine time | 无法确定时间时抛出
-
getFilename
Description copied from interface:ResourceGet filename 获取文件名- Specified by:
getFilenamein interfaceResource- Overrides:
getFilenamein classAbstractResource- Returns:
- filename or null | 文件名或 null
-
getDescription
-
createRelative
Description copied from interface:ResourceCreate relative resource 创建相对资源- Parameters:
relativePath- relative path | 相对路径- Returns:
- relative resource | 相对资源
- Throws:
IOException- if cannot create relative resource | 无法创建相对资源时抛出
-