UVM Set type/inst override: extended class with additional ports

In reply to Tudor Timi:

I mean uvm_analysis_export/ports that are additional fields in the extended class (not present in the parent one) and that need to be connected in the connect_phase of the (extended) environment wrapper class.

As far as I see, set_type_override is just useful for modifying class task/functions behaviour, but variables (and for this reason also uvm_analysis_export/ports) cannot be referred.

For example:
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// class a_ref_model
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
class a_ref_model extends uvm_component;

`uvm_component_utils_begin(analysis_ref_model)
`uvm_component_utils_end
	
uvm_analysis_export #(trans1) 		monitor1_export;
uvm_analysis_export #(trans2) 	        monitor2_export;
	
// Analysis FIFOs to provide blocking capabilities to each kind of transaction
uvm_tlm_analysis_fifo #(trans1)         container_1;
uvm_tlm_analysis_fifo #(trans2)         container_2;

function new(string name, uvm_component parent);
	super.new(name, parent);
endfunction: new

function void build_phase(uvm_phase phase);
	super.build_phase(phase);
            ....
endfunction: build_phase

function void connect_phase(uvm_phase phase);
....
endfunction: connect_phase

task run_phase(uvm_phase phase);
    ....
    endfunction: run_phase

endclass: a_ref_model

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// class a_custom_ref_model
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
class a_custom_ref_model extends a_ref_model;

// configuration object
analysis_config cfg;

`uvm_component_utils_begin(a_custom_ref_model)
	`uvm_field_object(cfg, UVM_DEFAULT)
`uvm_component_utils_end



uvm_analysis_export #(trans3) 		a_monitor_export; 	
uvm_analysis_port #(trans3)             updated_a_ap; 

function new(string name, uvm_component parent);
	super.new(name, parent);
endfunction: new

function void build_phase(uvm_phase phase);
	super.build_phase(phase);
            ....
endfunction: build_phase

function void connect_phase(uvm_phase phase);
....
endfunction: connect_phase

task run_phase(uvm_phase phase);
    ....
    endfunction: run_phase

endclass: a_custom_ref_model

This are the 2 classes. While creating the wrapper a_custom_env as an extension of a_env it is needed to connect for example a_monitor_export to something. Using the a_ref_model (and then set_type_override in the test) it generates a compilation error since such export it is not part of the base class.

Thanks, sorry if the problem is unusual or not standard.