pmcf
Version:
Poor mans configuration management
41 lines (34 loc) • 880 B
JavaScript
import { default_attribute_writable, addType } from "pacc";
import {
NetworkInterface,
NetworkInterfaceTypeDefinition
} from "./network-interface.mjs";
export const EthernetNetworkInterfaceTypeDefinition = {
name: "ethernet",
extends: NetworkInterfaceTypeDefinition,
specializationOf: NetworkInterfaceTypeDefinition,
owners: NetworkInterfaceTypeDefinition.owners,
key: "name",
attributes: {
arpbridge: {
...default_attribute_writable,
type: "network_interface",
collection: true
}
}
};
export class EthernetNetworkInterface extends NetworkInterface {
arpbridge;
static {
addType(this);
}
static get typeDefinition() {
return EthernetNetworkInterfaceTypeDefinition;
}
static isCommonName(name) {
return name.match(/eth\d+$/);
}
get kind() {
return EthernetNetworkInterfaceTypeDefinition.name;
}
}