mirror of
https://github.com/shadow1ng/fscan.git
synced 2025-09-14 14:06:44 +08:00

- 移除hostinfo_ext.go中7个未使用函数 - 移除target.go中7个未使用函数 - 清理多余空行,提升代码简洁性 - 保持核心功能完整,仅删除确认未被调用的函数 - 消除所有死代码编译警告
62 lines
1.2 KiB
Go
62 lines
1.2 KiB
Go
package common
|
||
|
||
import (
|
||
"context"
|
||
)
|
||
|
||
// TargetInfo 包装HostInfo,提供更丰富的功能
|
||
type TargetInfo struct {
|
||
*HostInfo // 嵌入HostInfo,保持向后兼容
|
||
context context.Context
|
||
metadata map[string]interface{}
|
||
}
|
||
|
||
// NewTargetInfo 创建新的目标信息
|
||
func NewTargetInfo(hostInfo HostInfo) *TargetInfo {
|
||
return &TargetInfo{
|
||
HostInfo: &hostInfo,
|
||
context: context.Background(),
|
||
metadata: make(map[string]interface{}),
|
||
}
|
||
}
|
||
|
||
|
||
// WithContext 设置上下文
|
||
func (t *TargetInfo) WithContext(ctx context.Context) *TargetInfo {
|
||
t.context = ctx
|
||
return t
|
||
}
|
||
|
||
|
||
// SetMetadata 设置元数据
|
||
func (t *TargetInfo) SetMetadata(key string, value interface{}) *TargetInfo {
|
||
if t.metadata == nil {
|
||
t.metadata = make(map[string]interface{})
|
||
}
|
||
t.metadata[key] = value
|
||
return t
|
||
}
|
||
|
||
// GetMetadata 获取元数据
|
||
func (t *TargetInfo) GetMetadata(key string) (interface{}, bool) {
|
||
if t.metadata == nil {
|
||
return nil, false
|
||
}
|
||
value, exists := t.metadata[key]
|
||
return value, exists
|
||
}
|
||
|
||
|
||
|
||
|
||
|
||
// String 返回字符串表示
|
||
func (t *TargetInfo) String() string {
|
||
return HostInfoString(t.HostInfo)
|
||
}
|
||
|
||
// HasMetadata 检查是否有指定的元数据
|
||
func (t *TargetInfo) HasMetadata(key string) bool {
|
||
_, exists := t.GetMetadata(key)
|
||
return exists
|
||
} |