Class Product
Represents a product listed in Developer Portal. Product can include one or more service versions.
Inherited Members
Namespace: Nevatech.Vsb.Repository.Entities
Assembly: Nevatech.Vsb.Repository.dll
Syntax
public class Product : DomainObjectBase, IValidator, IExtensibleDataObject, IEquatable<Product>, IExtensibleEntity
Constructors
Product()
Declaration
public Product()
Properties
CustomAttributes
Gets collection of custom attribute values. The key corresponds to an attribute type identifier.
Declaration
public CustomAttributeDictionary CustomAttributes { get; protected set; }
Property Value
| Type | Description |
|---|---|
| CustomAttributeDictionary |
Description
Gets or sets the product description.
Declaration
public string Description { get; set; }
Property Value
| Type | Description |
|---|---|
| String |
IsApprovalRequired
Gets or sets the flag indicating that consumers cannot subscribe and immediately start using the product without an explicit approval by Sentinet administrator.
Declaration
public bool IsApprovalRequired { get; set; }
Property Value
| Type | Description |
|---|---|
| Boolean |
IsMajorObject
Gets the flag indicating that current object is a major entity.
Declaration
public override bool IsMajorObject { get; }
Property Value
| Type | Description |
|---|---|
| Boolean |
Overrides
IsPrivate
Gets or sets the flag indicating that product should NOT be shown in the available products list. Private product is not advertised and should be assigned to a consumer by Sentinet administrator.
Declaration
public bool IsPrivate { get; set; }
Property Value
| Type | Description |
|---|---|
| Boolean |
IsSubscriptionRequired
Gets or sets the flag indicating that consumers must subscribe to the product and provide access keys when they call the product services. All services included in such product must have their IsAccessKeyRequired flags to be set to true. If product does not require subscriptions then customers may call its services immediately with or without providing access keys. The services included in such product must have their IsAccessKeyRequired flags to be set to false.
Declaration
public bool IsSubscriptionRequired { get; set; }
Property Value
| Type | Description |
|---|---|
| Boolean |
LastUpdate
Gets timestamp of the latest product update. The update includes any changes in the product, related subscriptions, or applications that need to be reported to the hosting node(s).
Declaration
public DateTime LastUpdate { get; }
Property Value
| Type | Description |
|---|---|
| DateTime |
Name
Gets or sets the display name of the product.
Declaration
public string Name { get; set; }
Property Value
| Type | Description |
|---|---|
| String |
ObjectType
Gets object type identifier.
Declaration
public override EntityType ObjectType { get; }
Property Value
| Type | Description |
|---|---|
| EntityType |
Overrides
ServiceVersionCount
Gets the number of service versions included in the product.
Declaration
public int ServiceVersionCount { get; }
Property Value
| Type | Description |
|---|---|
| Int32 |
Status
Gets or sets the product's life cycle status.
Declaration
public ProductStatus Status { get; set; }
Property Value
| Type | Description |
|---|---|
| ProductStatus |
SubscriptionLifetime
Gets or sets the default lifetime (in days) of subscriptions created for this product. New subscription's expiration date will be set according to this setting. If zero or less then subscription does not expire.
Declaration
public int SubscriptionLifetime { get; set; }
Property Value
| Type | Description |
|---|---|
| Int32 |
Methods
Equals(Product)
Determines whether the specified product is equal to the current product.
Declaration
public bool Equals(Product other)
Parameters
| Type | Name | Description |
|---|---|---|
| Product | other | The product to compare with the current product. |
Returns
| Type | Description |
|---|---|
| Boolean | True, if products are equal. False, if products are not equal. |
Equals(Object)
Determines whether the specified object is equal to the current object.
Declaration
public override bool Equals(object obj)
Parameters
| Type | Name | Description |
|---|---|---|
| Object | obj | The object to compare with the current object. |
Returns
| Type | Description |
|---|---|
| Boolean | True, if objects are equal. False, if objects are not equal. |
Overrides
GetHashCode()
Returns the hash code for this instance.
Declaration
public override int GetHashCode()
Returns
| Type | Description |
|---|---|
| Int32 | Hash code of the current instance. |
Overrides
IsSignificantlyDifferent(Product)
Returns flag indicating that this product is significantly different from the provided one, meaning that changes need to be reported to the nodes.
Declaration
public bool IsSignificantlyDifferent(Product other)
Parameters
| Type | Name | Description |
|---|---|---|
| Product | other | Previous version of the product to compare with. |
Returns
| Type | Description |
|---|---|
| Boolean | True, if versions are significantly different. False otherwise. |
ToString()
Returns a string that represents the current object.
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| String | A string that represents the current object. |
Overrides
Validate()
Evaluates the state of this object.
Declaration
public override bool Validate()
Returns
| Type | Description |
|---|---|
| Boolean | True if state is valid; otherwise, false. |