Global SDK doc's
https://developer.atlassian.com/display/DOCS/Atlassian+Plugin+SDK+Documentation
https://developer.atlassian.com/display/DOCS/Install+the+Atlassian+SDK+on+a+Windows+System
sdk placed to
d:\atlassian-plugin-sdk\
maven
d:\maven\
place for tutuorial
mkdir d:\atlastutorial
run jira in sdk
cd d:
cd d:\dev\jira-5.1.8
atlas-run-standalone --product jira --version 5.1.8 --jvmargs "-Xms512m -Xmx768m"
atlas-run --version 5.1.8
command description
https://developer.atlassian.com/display/DOCS/atlas-run-standalone
Hello world
https://developer.atlassian.com/display/DOCS/Create+a+HelloWorld+Plugin+Project
Architecture overview
https://confluence.atlassian.com/display/JIRA042/JIRA+Architectural+Overview
Development custom fields:
https://developer.atlassian.com/pages/viewpage.action?pageId=4227208
https://answers.atlassian.com/questions/117684/how-to-get-custom-field-value
Atlassian UI (Atlassian Java Script)
https://docs.atlassian.com/aui/latest/index.html
https://developer.atlassian.com/display/AUI/AJS+helper+functions
slf4j
Eclipse -> Help -> Install New Software
Add a new software site:
Name: slf4j
Expand "Maven osgi-bundles" and select "slf4j-api"
Click "Next" and follow the installation.
http://stackoverflow.com/questions/24479109/maven-for-eclipse-1-5-0-plugin-cannot-be-installed-under-kepler
Define value for groupId - com.atlassian.ksf-fields
Define value for artifactId: : ksf-fields
Define value for version: [1.0-SNAPSHOT]
Define value for package: [com.atlassian.ksf-fields]
pom.xml
<properties>
<jira.version>5.1.8</jira.version>
<amps.version>4.2.10</amps.version>
<plugin.testrunner.version>1.1.2</plugin.testrunner.version>
<!-- TestKit version 5.x for JIRA 5.x, 6.x for JIRA 6.x -->
<testkit.version>5.2.26</testkit.version>
</properties>
atlas-mvn eclipse:eclipse
Redeploy:
atlas-cli
pi
Classes:
https://docs.atlassian.com/jira/latest/allclasses-noframe.html
API Reference:
Plugin dev general descriptions:
https://developer.atlassian.com/display/JIRADEV/JIRA+Plugin+Module+Types
Custom fields:
$issue.getCustomField($customFieldID).name
$issue.getCustomFieldValue($customFieldID)
import com.atlassian.jira.ComponentManager;
import com.atlassian.jira.issue.fields.CustomField;
import com.atlassian.jira.issue.CustomFieldManager;
// gets a reference to the IssueManager and CustomFieldManager manager classes
final CustomFieldManager customFieldManager = ComponentAccessor.getCustomFieldManager();
// gets a reference to the desired custom field
final CustomField customField = customFieldManager.getCustomFieldObjectByName("custom-field-name");
// retrieves the custom field value object from the issue
final Object customFieldValue = issue.getCustomFieldValue(customField);
// prints value to console
System.out.println("Custom field value: " + customFieldValue);
AJS
http://www.j-tricks.com/1/post/2012/02/some-ajs-tricks.html
https://docs.atlassian.com/jira/REST/5.1.8/
https://answers.atlassian.com/questions/47843/strange-javascript-problem-in-create-screen
Inline Edit:
https://developer.atlassian.com/display/JIRADEV/Inline+Edit+for+JIRA+Plugins
https://answers.atlassian.com/questions/200518/script-to-replace-summary-field
updated value of textbox through AJS.$("#controlid").val()
AJS.$('#customfield_11426\\:input1').bind('change', function (e) { console.log("value of input1" + AJS.$(this).val()); //this object only correct value. });
----------------
AJS.$("<p>").html('please input here').insertAfter('input[id=yourCustomFieldId]');
----------------
https://developer.atlassian.com/display/AUI/Install+and+Explore+the+AUI+Flat+Pack
customized screen:
AUI
https://docs.atlassian.com/aui/latest/
Jira on screen notifications:
http://www.j-tricks.com/tutorials/jira-notification-messages
http://stackoverflow.com/questions/18437164/jira-pluggin-development-show-alert-notification
Web fragments:
Rest customization
Reindex in groovy
Set environment