The DcnManager contract serves as a comprehensive management hub for the DCN system. It facilitates various functions essential for the creation, ownership, renewal, and extension of DCN names, providing a seamless user experience within the DCN ecosystem.
Set Disallowed Labels
The setDisallowedLabels function allows administrators to disable the minting of specific names by marking them as disallowed labels. This capability ensures control over the types of names that can be minted, preventing the creation of names that may conflict with existing manufacturer names or other reserved labels.
Mint Top-Level Domain (TLD)
As a vital feature, the DcnManager enables the minting of Top-Level Domains (TLDs), such as "dimo." Only administrators possess the authority to mint TLDs, allowing for the creation of distinct namespaces under which DCN names can be registered. While currently limited to "dimo," this functionality paves the way for future expansion to accommodate additional TLDs, such as manufacturer names.
Users can leverage the mint function to mint their own unique DCN names. This process involves the creation of a new name under the chosen TLD and associating it with a specific vehicle ID (optional). Additionally, the function charges the user based on the selected ownership period. To ensure smooth execution, users must pre-approve the contract to spend DIMO tokens on their behalf.
The renew function empowers users to renew the ownership of their DCN names, effectively extending the period of ownership. By calling this function, users can ensure the continued association of their name with their vehicle ID, maintaining their presence within the DCN system.
Claiming Expired Names
In cases where the ownership period of a DCN name has expired, the claim function allows another user to claim the name by paying for an extension under the same pricing strategy. This mechanism ensures that names with expired ownership are made available for reuse while maintaining fairness and adherence to the established pricing structure.
During the minting process, the DcnManager enforces strict validation rules for the labels of DCN names. Labels must adhere to the following criteria:
They must be between 3 and 15 characters in length.
Only characters from the set [A-Z][a-z][0-9], and lowercase alphabets are permitted.