redef class MEntity
# URL to `self` within the web interface.
- fun web_url: String is abstract
+ fun web_url: String do return "/doc/" / full_name
# URL to `self` within the JSON api.
fun api_url: String do return "/api/entity/" / full_name
end
end
-redef class MPackage
- redef var web_url = "/package/{full_name}" is lazy
-end
-
-redef class MGroup
- redef var web_url = "/group/{full_name}" is lazy
-end
-
redef class MModule
- redef var web_url = "/module/{full_name}" is lazy
-
redef fun api_json(handler) do
var obj = super
obj["intro_mclassdefs"] = to_mentity_refs(collect_intro_mclassdefs(private_view))
end
redef class MClass
- redef var web_url = "/class/{full_name}" is lazy
-
redef fun api_json(handler) do
var obj = super
obj["all_mproperties"] = to_mentity_refs(collect_accessible_mproperties(private_view))
end
redef class MClassDef
- redef var web_url = "/classdef/{full_name}" is lazy
-
redef fun json do
var obj = super
obj["intro"] = to_mentity_ref(mclass.intro)
end
redef class MProperty
- redef var web_url = "/property/{full_name}" is lazy
-
redef fun json do
var obj = super
obj["intro_mclass"] = to_mentity_ref(intro_mclassdef.mclass)
end
redef class MPropDef
- redef var web_url = "/propdef/{full_name}" is lazy
-
redef fun json do
var obj = super
obj["intro"] = to_mentity_ref(mproperty.intro)