Skip to content

Create a non-rewardable property #799

Open
@aggre

Description

@aggre

Description

Create a Property that cannot be staked for those who do not need inflationary funds.

Solution

Add new interfaces createWithNonRewardable and createAndAuthenticateWithNonRewardable to the PropertyFactory Contract. It also adds new interfaces isNonRewardable and setNonRewardable to the PropertyGroup Contract.

For Properties created by those PropertyFactory Contract's interfaces, the return values of PropertyGroup.isGroup and PropertyGroup.isNonRewardable will be true.
If PropertyGroup.isNonRewardable is true, no one can stake on that Property.

Alternatives/Features

With Iron Contract and Ironed Property tokens

Create a new contract called "Iron Contract" without modifying the PropertyFactory Contract and PropertyGroup Contract. The Iron Contract receives Property tokens and returns an Ironed Property tokens. An Ironed Property tokens are tokens associated with one Property. Iron Contract does not withdraw inflationary funds for Property tokens. As a result, users can refuse to receive inflationary funds.

This idea is flexible and versatile, but it creates two types of tokens for a single Property. This can also compromise usability.

Code of Conduct

By submitting this pull request, I confirm I've read and complied with the CoC 🖖

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions