We have a requirement to customize the “copy course” function by B2.
We know there is an existing function for this, can you guide us if there is any existing API so we can simply invoke it ?
Depending on what you're hoping to accomplish, there are a few things...
-Use SIS Framework to clone courses into new sections
-Use the PostCourseCloning extension point to call any custom code to run following course creation or cloning
Hopefully these can help get you moving in the right direction.
thanks Chris, this is really helpful.
We are using Custom B2 so it is not possible for SIS framework.
can you share more about postcoursecloing? it this an API? can we use custom B2 to invoke it?
i didn't find it under Building Block API Documentation | Blackboard Community
Are you already using a custom B2, or are you in the process of writing one?
Have you looked at blackboard.admin.persist.course.CourseSitePersister, which has the clone method and allows you to define your CloneConfig? I haven't ever used it, but that's where I might start.
With respect to post-course-cloning, there isn't any documentation around it, as it's not part of the public API. You can define the extension in your bb manifest, on the extension point "blackboard.cmsadmin.postCloneCourseEventListener" Note - the interface to use is not in the typical bb-platform library...you'll also need to use the bb-cms-admin library to import blackboard.admin.persist.course.CourseEventListener.
thanks again Chris very helpful
looks like very complicated
do u have any example? Or can you add my firstname.lastname@example.org
In your bb-manifest file, you'll need a stanza like this (be sure to insert your own id and class):
<extension id="<your extension id here>"
point="blackboard.cmsadmin.postCloneCourseEventListener" class="<your extension class>" singleton="true" />
Then, in your class, be sure to implement the interface CourseEventListener (blackboard.admin.persist.course.CourseEventListener), and your IDE should help you do the rest.
Retrieving data ...