'Return a size object based on a machine type name and zone.
:param  name: The name of the node
:type   name: ``str``
:keyword  zone: The zone to search for the machine type in
:type     zone: ``str`` or :class:`GCEZone` or
:class:`NodeLocation` or ``None``
:return:  A GCENodeSize object for the machine type
:rtype:   :class:`GCENodeSize`'

def ex_get_size(self, name, zone=None):

    zone = (zone or self.zone)
    if (not hasattr(zone, 'name')):
        zone = self.ex_get_zone(zone)
    request = ('/zones/%s/machineTypes/%s' % (zone.name, name))
    response = self.connection.request(request, method='GET').object
    return self._to_node_size(response)
