215 |
my $instance = $class->new( %$params ); |
my $instance = $class->new( %$params ); |
216 |
if ( $instance->can('data') && ! $instance->can('as_data') ) { |
if ( $instance->can('data') && ! $instance->can('as_data') ) { |
217 |
Frey::Role::as_data->meta->apply( $instance ); |
Frey::Role::as_data->meta->apply( $instance ); |
218 |
$self->TODO("apply as_data role to $class"); |
warn "# apply as_data role to $class"; |
219 |
} |
} |
220 |
if ( $instance->can('sponge') && ! $instance->can('as_sponge') ) { |
if ( $instance->can('sponge') && ! $instance->can('as_sponge') ) { |
221 |
Frey::Role::as_sponge->meta->apply( $instance ); |
Frey::Role::as_sponge->meta->apply( $instance ); |
222 |
$self->TODO("apply as_sponge role to $class"); |
warn "# apply as_sponge role to $class"; |
223 |
} |
} |
224 |
|
|
225 |
if ( ! $instance->can('add_status') ) { |
if ( ! $instance->can('add_status') ) { |
226 |
Frey::Web->meta->apply( $instance ); |
Frey::Web->meta->apply( $instance ); |
227 |
$self->TODO("apply Frey::Web role to $class"); |
warn "# apply Frey::Web role to $class"; |
228 |
} |
} |
229 |
|
|
230 |
if ( $self->can('add_status') ) { |
$self->add_status({ $class => $params }); |
|
$self->add_status({ $class => $params }); |
|
|
} else { |
|
|
warn "# class $self can't add_status"; |
|
|
} |
|
231 |
return $instance; |
return $instance; |
232 |
} |
} |
233 |
|
|