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. |