public abstract class ModelBuilders extends Object
The general pattern for using these builders is: 1. call a builder factory method, such as
addon(), which returns a builder of the appropriate type; 2. call property setter
methods on the builder, such as ModelBuilders.AddonBuilder.name(String); 3. after setting all the
desired properties, call the builder's build() method, which returns the finished
object. Note that the builder factory methods can also be given an existing object as a
parameter, in which case they initialize the builder by copying all of its properties from
the existing object.
If you have omitted any required property, build() will throw an
ModelBuilders.InvalidModelException. (You can easily identify required properties because they
do not use the Option type; properties in this library are never nullable, so if a
property is a String rather than an Option<String>, it must have a value.)
Optional properties always default to Option.none() if you do not specify a value.
For some very simple objects, the factory methods construct and return a finished object rather than returning a builder.
| Modifier and Type | Class and Description |
|---|---|
static class |
ModelBuilders.AddonBuilder |
static class |
ModelBuilders.AddonVersionBuilder |
static class |
ModelBuilders.AddressBuilder |
static class |
ModelBuilders.ApplicationVersionBuilder |
static class |
ModelBuilders.BuilderWithLinks<T extends ModelBuilders.BuilderWithLinks<T>> |
static class |
ModelBuilders.HighlightBuilder |
static class |
ModelBuilders.InvalidModelException
ModelBuilders methods that declare this checked exception will throw it if you attempt
to construct a model object that does not conform to the Marketplace API schema, for instance
by omitting a required property. |
static class |
ModelBuilders.LinksBuilder |
static interface |
ModelBuilders.SafeBuilder<T>
Common interface for builders that will always succeed in building an object;
any required properties that you do not set will be given default values.
|
static class |
ModelBuilders.ScreenshotBuilder |
static interface |
ModelBuilders.UnsafeBuilder<T>
Common interface for builders that do not provide any default values for
required properties, and will throw an exception if you try to call
build()
before you have set all the required properties. |
static class |
ModelBuilders.UnsafeBuilderWithLinks<A,T extends ModelBuilders.UnsafeBuilderWithLinks<A,T>> |
static class |
ModelBuilders.VendorBuilder |
public static ModelBuilders.AddonBuilder addon()
ModelBuilders.AddonBuilder.public static ModelBuilders.AddonBuilder addon(Addon from)
ModelBuilders.AddonBuilder initialized from the properties of an existing Addon.public static ModelBuilders.AddonVersionBuilder addonVersion()
ModelBuilders.AddonVersionBuilder.public static ModelBuilders.AddonVersionBuilder addonVersion(AddonVersion from)
ModelBuilders.AddonVersionBuilder initialized from the properties of an existing AddonVersion.public static ModelBuilders.AddressBuilder address()
ModelBuilders.AddressBuilder.public static ModelBuilders.ApplicationVersionBuilder applicationVersion()
ModelBuilders.ApplicationVersionBuilder.public static ModelBuilders.ApplicationVersionBuilder applicationVersion(ApplicationVersion from)
ModelBuilders.ApplicationVersionBuilder initialized from the properties of an existing ApplicationVersion.public static ModelBuilders.HighlightBuilder highlight()
ModelBuilders.HighlightBuilder.public static ModelBuilders.LinksBuilder links()
ModelBuilders.LinksBuilder.public static ModelBuilders.ScreenshotBuilder screenshot()
ModelBuilders.ScreenshotBuilder.public static ModelBuilders.VendorBuilder vendor()
ModelBuilders.VendorBuilder.public static ModelBuilders.VendorBuilder vendor(Vendor from)
ModelBuilders.VendorBuilder initialized from the properties of an existing Vendor.public static VersionCompatibility versionCompatibilityForCloud(ApplicationKey appKey)
VersionCompatibility that specifies compatibility with an application in
Cloud hosting only. For Cloud hosting, there is no application version range.public static VersionCompatibility versionCompatibilityForServer(ApplicationKey appKey, int minBuild, int maxBuild)
VersionCompatibility that specifies compatibility with an application in
Server hosting only. For Server hosting, you must specify the application version range as
a minimum and maximum build number (this value comes from ApplicationVersion.getBuildNumber()).public static VersionCompatibility versionCompatibilityForServerAndCloud(ApplicationKey appKey, int minBuild, int maxBuild)
VersionCompatibility that specifies compatibility with an application in both
Cloud and Server hosting, specifying the application version range for Server hosting as
a minimum and maximum build number (this value comes from ApplicationVersion.getBuildNumber()).Copyright © 2016 Atlassian. All rights reserved.