Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the MIT License. See License.txt in the project root for
license information.
/**
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*/
package com.microsoft.azure.arm.model.implementation;
import com.microsoft.azure.arm.model.Creatable;
import com.microsoft.azure.arm.model.Indexable;
import rx.Observable;
The base class for all creatable resource.
Type parameters: - <FluentModelT> – the fluent model type representing the creatable resource
- <InnerModelT> – the model inner type that the fluent model type wraps
- <FluentModelImplT> – the fluent model implementation type
/**
* The base class for all creatable resource.
*
* @param <FluentModelT> the fluent model type representing the creatable resource
* @param <InnerModelT> the model inner type that the fluent model type wraps
* @param <FluentModelImplT> the fluent model implementation type
*/
public abstract class CreatableImpl<
FluentModelT extends Indexable,
InnerModelT,
FluentModelImplT extends IndexableRefreshableWrapperImpl<FluentModelT, InnerModelT>>
extends
CreatableUpdatableImpl<FluentModelT, InnerModelT, FluentModelImplT>
implements
Creatable<FluentModelT> {
Creates a CreatableImpl.
Params: - name – the creatable name
- innerObject – the inner object
/**
* Creates a CreatableImpl.
*
* @param name the creatable name
* @param innerObject the inner object
*/
protected CreatableImpl(String name, InnerModelT innerObject) {
super(name, innerObject);
}
@Override
public final Observable<FluentModelT> applyAsync() {
throw new IllegalStateException("Internal Error: applyAsync cannot be called from CreatableImpl");
}
@Override
public final Observable<FluentModelT> updateResourceAsync() {
throw new IllegalStateException("Internal Error: updateResourceAsync cannot be called from CreatableImpl");
}
@Override
public abstract Observable<FluentModelT> createResourceAsync();
}