Show / Hide Table of Contents

Class PackageImplementation

An implementation provided by a distribution-specific package manager instead of Zero Install.

Inheritance
Object
XmlUnknown
FeedElement
TargetBase
Element
PackageImplementation
Implements
IEquatable<XmlUnknown>
IEquatable<FeedElement>
IEquatable<TargetBase>
IBindingContainer
IDependencyContainer
ICloneable<Element>
IEquatable<Element>
IEquatable<PackageImplementation>
Inherited Members
Element.ReleaseDateFormat
Element.ReleasedVerbatim
Element.ContainsCommand(String)
Element.GetCommand(String)
Element.Normalize(FeedUri)
Element.CloneFromTo(Element, Element)
Element.Equals(Element)
Element.License
Element.Main
Element.SelfTest
Element.DocDir
Element.Dependencies
Element.Restrictions
Element.Bindings
Element.Commands
Element.Item[String]
TargetBase.CloneFromTo(TargetBase, TargetBase)
TargetBase.Equals(TargetBase)
TargetBase.Languages
TargetBase.Architecture
TargetBase.LanguagesString
TargetBase.ArchitectureString
FeedElement.FilterMismatch<T>(T)
FeedElement.FilterMismatch(IRecipeStep)
FeedElement.Equals(FeedElement)
FeedElement.IfZeroInstallVersion
FeedElement.IfZeroInstallVersionString
XmlUnknown.UnknownAttributes
XmlUnknown.UnknownElements
XmlUnknown.EnsureAttribute(Object, String)
XmlUnknown.EnsureAttributeSafeID(String, String)
XmlUnknown.ToShortXml()
XmlUnknown.Equals(XmlUnknown)
Namespace: ZeroInstall.Model
Assembly: ZeroInstall.Model.dll
Syntax
public sealed class PackageImplementation : Element, IBindingContainer, IDependencyContainer
Remarks

Any Bindings inside Dependencys for the Feed will be ignored; it is assumed that the requiring component knows how to use the packaged version without further help.

Constructors

PackageImplementation()

Declaration
public PackageImplementation()

Fields

DistributionNames

Well-known values for Distributions.

Declaration
public static readonly string[] DistributionNames
Field Value
Type Description
String[]

Properties

Distributions

A list of distribution names (e.g. Debian, RPM) where Package applies. Applies everywhere if empty.

Declaration
public List<string> Distributions { get; }
Property Value
Type Description
List<String>

DistributionsString

Used for XML serialization.

Declaration
public string DistributionsString { get; set; }
Property Value
Type Description
String
See Also
Distributions

Package

The name of the package in the distribution-specific package manager.

Declaration
public string Package { get; set; }
Property Value
Type Description
String

Released

Not used.

Declaration
public override DateTime Released { get; set; }
Property Value
Type Description
DateTime
Overrides
Element.Released

ReleasedString

Not used.

Declaration
public override string ReleasedString { get; set; }
Property Value
Type Description
String
Overrides
Element.ReleasedString

RolloutPercentage

Not used.

Declaration
public override int RolloutPercentage { get; set; }
Property Value
Type Description
Int32
Overrides
Element.RolloutPercentage

Stability

Not used.

Declaration
public override Stability Stability { get; set; }
Property Value
Type Description
Stability
Overrides
Element.Stability

Version

The range of versions to accept for the specified Package.

Declaration
public VersionRange Version { get; set; }
Property Value
Type Description
VersionRange

VersionModifier

Not used.

Declaration
public override string VersionModifier { get; set; }
Property Value
Type Description
String
Overrides
Element.VersionModifier

VersionString

Used for XML serialization.

Declaration
public override string VersionString { get; set; }
Property Value
Type Description
String
Overrides
Element.VersionString
See Also
Version

Methods

Clone()

Creates a deep copy of this PackageImplementation instance.

Declaration
public override Element Clone()
Returns
Type Description
Element

The new copy of the PackageImplementation.

Overrides
Element.Clone()

CloneImplementation()

Creates a deep copy of this PackageImplementation instance.

Declaration
public PackageImplementation CloneImplementation()
Returns
Type Description
PackageImplementation

The new copy of the PackageImplementation.

EnsureAttributes()

Ensures that required values deserialized from XML attributes are set (not null).

Declaration
protected override void EnsureAttributes()
Overrides
Element.EnsureAttributes()
Exceptions
Type Condition
InvalidDataException

A required property is not set or invalid.

Equals(Object)

Declaration
public override bool Equals(object obj)
Parameters
Type Name Description
Object obj
Returns
Type Description
Boolean
Overrides
Element.Equals(Object)

Equals(PackageImplementation)

Declaration
public bool Equals(PackageImplementation other)
Parameters
Type Name Description
PackageImplementation other
Returns
Type Description
Boolean

GetHashCode()

Declaration
public override int GetHashCode()
Returns
Type Description
Int32
Overrides
Element.GetHashCode()

ToString()

Returns the implementation in the form "Package (Distributions)". Not safe for parsing!

Declaration
public override string ToString()
Returns
Type Description
String

Operators

Equality(PackageImplementation, PackageImplementation)

Indicates whether the object on the left is equal to the object on the right.

Declaration
public static bool operator ==(PackageImplementation left, PackageImplementation right)
Parameters
Type Name Description
PackageImplementation left

The left object

PackageImplementation right

The right object

Returns
Type Description
Boolean

true if the objects are equal; otherwise, false.

Inequality(PackageImplementation, PackageImplementation)

Indicates whether the object on the left is not equal to the object on the right.

Declaration
public static bool operator !=(PackageImplementation left, PackageImplementation right)
Parameters
Type Name Description
PackageImplementation left

The left object

PackageImplementation right

The right object

Returns
Type Description
Boolean

true if the objects are not equal; otherwise, false.

Implements

System.IEquatable<T>
System.IEquatable<T>
System.IEquatable<T>
IBindingContainer
IDependencyContainer
ICloneable<T>
System.IEquatable<T>
System.IEquatable<T>
In This Article
Back to top Copyright Bastian Eicher et al