OK a number of points here, yes Downwind call should be
abeam the downwind end of the R/W (or when passing abeam the threshold of the reciprocal runway, which is the same thing). Turns
should be in the same direction as circuit direction, and to avoid turning against circuit direction you should therefore be outside the ATZ before you turn right to position downwind, though it
is permissable to join as descibed by turning against the circuit direction with ATC clearance,
but when joining you should
always be giving way to any established circuit traffic so clearedfinals should have been giving way to the guy already in the circuit. As said before, best way would have been to go for either an overhead join (and though it would be as well to state this, he just needed to call when finally downwind) or to ask for a L base join.
Note also that asking you to
call downwind is not a
clearance to
join downwind so it should be queried.