万本电子书0元读

万本电子书0元读

顶部广告

JIRA Development Cookbook - Third Edition电子书

售       价:¥

5人正在读 | 0人评论 9.8

作       者:Jobin Kuruvilla

出  版  社:Packt Publishing

出版时间:2016-09-01

字       数:424.8万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Your one-stop resource for mastering extensions and customizations in JIRA 7+ About This Book Explore the new features of JIRA 7 and best practices for agile development and integration with development tools Customize the look and feel of your JIRA UI to match your specific user needs Create seamless reports that make sense of your data through easy-to-use techniques Who This Book Is For If you are a JIRA developer or administrator, or a project manager who wants to fully exploit the exciting capabilities of JIRA, then this is the perfect book for you. What You Will Learn Create and deploy your own JIRA plugins Manipulate workflows to transform JIRA into a user-friendly system Create custom reports that show statistics for particular people, projects, versions, or other fields within issues Simplify reporting by writing your own JIRA gadgets, which can be added into a user's dashboard Master database handling by extending and retrieving custom field details from the database Deal with custom fields on an issue and program custom field option In Detail JIRA provides issue and project tracking for software development teams to improve code quality and the speed of development. With the new version of JIRA, you can create your own JIRA plugins and customize the look and feel of your JIRA UI easier than ever. JIRA Development Cookbook , Third Edition, is a one-stop resource to master extensions and customizations in JIRA. This book starts with recipes about simplifying the plugin development process followed by recipes dedicated to the plugin framework. Then, you will move on to writing custom field plugins to create new field types or custom searchers. You will also learn how to program and customize workflows to transform JIRA into a user-friendly system. With so much data spanning different projects, issues, and so on, we will cover how to work on reports and gadgets to get customized data according to our needs. At the end of the book, you will learn how to customize JIRA by adding new tabs, menus, and web items; communicate with JIRA via the REST APIs; and work with the JIRA database. Style and approach The most unique aspect of this book is its approach. This book is recipe-based, with real-world examples, that will empower you to implement agile processes and explore the exciting capabilities of Jira.
目录展开

JIRA Development Cookbook Third Edition

JIRA Development Cookbook Third Edition

Credits

About the Author

Acknowledgments

About the Reviewer

www.PacktPub.com

Why subscribe?

Preface

What this book covers

What you need for this book

Who this book is for

Sections

Getting ready

How to do it…

How it works…

There's more…

See also

Conventions

Reader feedback

Customer support

Downloading the example code

Errata

Piracy

Questions

1. Plugin Development Process

Introduction

What is a JIRA add-on?

The plugin development process

Atlassian Marketplace

Troubleshooting

Setting up the development environment

Getting ready

How to do it...

There's more...

Proxy settings for Maven

Using local Maven

Configuring IDEs to use the SDK

Troubleshooting

Creating a skeleton plugin

Getting ready

How to do it...

How it works...

There's more...

One step to your skeleton plugin

Creating an Eclipse project

Adding plugin modules

Getting ready

How to do it...

How it works...

Deploying a JIRA plugin

Getting ready

How to do it...

How it works...

There's more...

Using a specific version of JIRA

Reusing the data in each run

Troubleshooting

Making changes and redeploying a plugin

How to do it...

Debugging in Eclipse

See also

Using FastDev for plugin development

Getting ready

How to do it...

How it works...

There's more...

Adding ignored files

Changing admin credentials

See also

Testing and debugging

Getting ready

How to do it...

How it works...

There's more...

Using custom data for integration/functional Tests

Testing against different version of JIRA/Tomcat

See also

2. Understanding the Plugin Framework

Introduction

JIRA architecture

Third-party components

Webwork

Seraph

Embedded Crowd

PropertySet

Active Objects

OSWorkflow

OfBiz Entity Engine

Apache Lucene

Atlassian Gadget JavaScript Framework

Shared Access Layer

Architecture

Authentication and user management

Property management

Presentation

Database

Workflows

Searching

Scheduled jobs

Plugins

Types of plugin modules

Reporting

Workflows

Custom fields

Searching

Links and tabs

Remote invocation

Actions and components

Other plugin modules

What goes into atlassian-plugin.xml?

Working with the Plugins1 and Plugins2 versions

Development

Installation

JIRA system plugins

Stable and core APIs

Modifying Atlassian bundled plugins

How to do it...

How it works...

See also

Converting plugins from V1 to V2

Getting ready

How to do it...

How it works...

See also

Adding resources into plugins

Getting ready

How to do it...

Adding web resources into plugins

How to do it...

How it works...

There's more...

Web resource contexts

Turning off batch mode

Building JIRA from source

Getting ready

How to do it...

How it works...

There's more...

Making a single class patch

See also

Adding new webwork actions to JIRA

Getting ready

How to do it...

How it works...

There's more...

Adding new commands to the action

See also

Form token handling in webwork actions

Getting ready

How to do it...

How it works...

There's more...

Providing a token in HTML links

Getting the token programmatically

Opting out of token checking in remote calls

See also

Capturing plugin installation/uninstallation events

Getting ready

How to do it...

How it works...

See also

3. Working with Custom Fields

Introduction

Writing a simple custom field

Getting ready

How to do it...

How it works...

There's more...

See also

Custom field searchers

Getting ready

How to do it...

How it works...

There's more...

Dealing with custom fields on an issue

Getting ready

How to do it...

How it works...

See also

Programming custom field options

Getting ready

How to do it...

See also

Overriding the validation of custom fields

Getting ready

How to do it...

See also

Customizing the change log value

Getting ready

How to do it...

How it works...

Migrating from one custom field type to another

How to do it...

How it works...

There's more...

Changing the type of a custom field

See also

Making custom fields sortable

Getting ready

How to do it...

How it works...

There's more...

See also

Displaying custom fields on subtask columns

How to do it...

How it works...

User and date fields

How to do it...

How it works...

See also

Adding custom fields to notification e-mails

Getting ready

How to do it...

How it works...

Adding help text for a custom field

Getting ready

How to do it...

How it works...

Removing the "none" option from a select field

How to do it...

There's more...

Reloading velocity changes without restart (auto reloading)

See also

Making the custom field project importable

How to do it...

See also

Changing the size of a text area custom field

How to do it...

See also

4. Programming Workflows

Introduction

Writing a workflow condition

Getting ready

How to do it...

How it works...

See also

Writing a workflow validator

Getting ready

How to do it...

How it works...

See also

Writing a workflow post function

Getting ready

How to do it...

How it works...

See also

Editing an active workflow

How to do it...

How it works...

There's more...

Modifying workflows in a JIRA database

Permissions based on workflow status

How to do it...

How it works...

There's more...

Making an issue editable/non-editable using workflow properties

See also

Including/excluding resolutions for specific transitions

How to do it...

How it works...

See also

Adding workflow triggers

Getting ready

How to do it...

How it works...

There's more...

User mapping from development tools to JIRA

See also

Internationalization in workflow statuses

How to do it...

How it works...

See also

Obtaining available workflow actions programmatically

How to do it...

How it works...

There's more...

Getting the action ID's given name

Programmatically progressing on workflows

How to do it...

How it works...

Obtaining workflow history from the database

Getting ready

How to do it...

How it works...

See also

Reordering workflow actions in JIRA

How to do it...

How it works...

Creating common transitions in workflows

How to do it...

How it works...

Creating global transitions in workflows

How to do it...

How it works...

5. Gadgets and Reporting in JIRA

Introduction

Writing a JIRA report

Getting ready

How to do it...

How it works...

See also

Reports in Excel format

Getting ready

How to do it...

How it works...

See also

Data validation in JIRA reports

Getting ready

How to do it...

How it works...

See also

Restricting access to reports

Getting ready

How to do it...

How it works...

See also

Object configurable parameters for reports

How to do it...

How it works...

See also

Writing JIRA gadgets

Getting ready

How to do it...

How it works...

There's more...

Invoking REST services from gadgets

Getting ready

How to do it...

How it works...

See also

Configuring user preferences in gadgets

Getting ready...

How to do it...

How it works...

There's more...

See also

Accessing gadgets outside of JIRA

Getting ready...

How to do it...

How it works...

See also

6. The Power of JIRA Searching

Introduction

Writing a JQL function

Getting ready

How to do it...

How it works...

See also

Sanitizing JQL functions

Getting ready

How to do it...

How it works...

See also

Adding a search request view

Getting ready

How to do it...

How it works...

There's more...

Using Single Issue Views to render search views

See also

Smart querying using quick search

How to do it...

There's more...

Searching in plugins

How to do it...

There's more...

See also

Parsing a JQL query in plugins

How to do it...

How it works...

See also

Linking directly to search queries

How to do it...

How it works...

There's more...

Index and de-index issues programmatically

How to do it...

See also

Searching on issue entity properties

Getting ready

How to do it...

How it works...

There's more...

See also

Managing filters programmatically

How to do it...

Creating a filter

Updating a filter

Deleting a filter

Retrieving filters

Sharing a filter

See also

Subscribing to a filter

How to do it...

How it works...

There's more...

See also

7. Programming Issues

Introduction

Creating an issue from a plugin

How to do it...

How it works...

There's more...

Creating the issue using IssueManager

See also

Creating subtasks on an issue

How to do it...

See also

Updating an issue

How to do it...

Deleting an issue

How to do it...

Adding new issue operations

Getting ready

How to do it...

How it works...

There's more...

See also

Conditions on issue operations

Getting ready...

How to do it...

How it works...

Working with attachments

Getting ready...

How to do it...

Creating an attachment

Reading attachments on an issue

Deleting an attachment

There's more...

Time tracking and worklog management

Getting ready...

How to do it...

Auto adjusting the remaining estimate

Logging work and retaining the remaining estimate

Logging work with a new remaining estimate

Logging work and adjusting the remaining estimate by a value

How it works...

There's more

Updating worklogs

Deleting worklogs

Auto Adjusting remaining estimate

Deleting a worklog and retaining the remaining estimate

Deleting a worklog with a new remaining estimate

Deleting a worklog and adjusting the remaining estimate

Working with comments on issues

How to do it...

Creating comments on issues

Creating comments on an issue and restricting it to a project role or group

Updating comments

Deleting comments

Programming change logs

How to do it...

How it works...

Programming issue links

Getting ready...

How to do it...

There's more...

Deleting Issue Links

Retrieving Issue Links on an issue

JavaScript tricks on issue fields

How to do it...

How it works...

Creating issues and comments from e-mail

How to do it...

How it works...

8. Customizing the UI

Introduction

Changing the basic look and feel

How to do it...

Adding new web sections in the UI

How to do it...

How it works...

See also

Adding new web items in the UI

How to do it...

How it works...

See also

Use of decorators and other metadata tags

Getting ready

How to do it...

How it works...

See also

Adding conditions for web fragments

How to do it...

How it works...

Creating new velocity context for web fragments

How to do it...

How it works...

Adding a new drop-down menu on the top navigation bar

How to do it...

How it works...

Dynamic creation of web items

Getting ready

How to do it...

How it works...

Adding new tabs in the View Issue screen

Getting ready

How to do it…

How it works...

There's more...

Loading issue tab panel asynchronously

Adding new tabs in the Browse Project screen

Getting ready

How to do it...

How it works...

Adding new links in the Project-centric view

Getting ready

How to do it...

How it works...

See also

Adding new panels in the project-centric view

Getting ready

How to do it...

How it works...

Adding sub-navigation in Project-centric view

Getting ready

How to do it...

How it works...

Adding issue link renderers

Getting ready

How to do it...

How it works...

See also

Displaying dynamic notifications/warnings on issues

Getting ready

How to do it...

There's more...

Re-ordering Issue Operations in the View Issue page

How to do it...

How it works...

See also

Re-ordering fields in the View Issue page

How to do it...

See also

9. Remote Access to JIRA

Introduction

Writing Java client for REST API

Getting ready

How to do it...

Working with issues

Getting ready

How to do it...

Creating Issues

Updating issues

Browsing issues

Working with attachments

Getting ready

How to do it...

Using input stream and a new filename

Using the AttachmentInput object

Using file and a new filename

Browsing attachments

Remote time tracking

Getting ready...

How to do it...

Working with comments

Getting ready

How to do it...

Remote user and group management

How to do it...

Creating a User

Updating a User

Adding a User to an application

Removing a User from an application

Deleting a User

Creating a Group

Adding a user to a Group

Getting users in a Group

Removing a user from a Group

Deleting a Group

Progressing an issue in workflow

Getting ready

How to do it...

Searching issues

Getting ready

How to do it...

Managing versions

Getting ready

How to do it...

Managing components

Getting ready

How to do it...

Remote administration methods

How to do it...

Creating a Permission Scheme

Creating a Project

Retrieving the project roles

Add actors to a project role

How it works...

Exposing services and data entities as REST APIs

Getting ready

How to do it...

How it works...

Using the REST API browser

How to do it...

Working with JIRA Webhooks

How to do it...

How it works...

There's more...

10. Dealing with the JIRA Database

Introduction

Extending the JIRA database with a custom schema

How to do it...

How works...

Accessing database entities from plugins

How to do it...

Reading from a database

Writing a new record

Updating a record

Persisting plugin information in the JIRA database

How to do it...

How it works...

Using Active Objects to store data

Getting ready...

How to do it...

How it works...

Accessing the JIRA configuration properties

How to do it...

Getting a database connection for JDBC calls

How to do it...

Migrating a custom field from one type to another

How to do it...

Retrieving issue information from a database

How to do it...

There's more...

Retrieving custom field details from a database

How to do it...

Retrieving permissions on issues from a database

How to do it...

Retrieving workflow details from a database

How to do it...

Updating the issue status in a database

Getting ready

How to do it...

Retrieving users and groups from a database

How to do it...

Dealing with change history in a database

How to do it...

11. Useful Recipes

Introduction

Writing a service in JIRA

Getting ready

How to do it...

How it works...

See also

Adding configurable parameters to a service

How to do it...

How it works...

See also

Writing scheduled tasks in JIRA

How to do it...

How it works...

See also

Writing listeners in JIRA

Getting ready

How to do it...

How it works...

See also

Customizing e-mail content

How to do it...

How it works...

Redirecting to a different page in webwork actions

How to do it...

Adding custom behavior for user details

Getting ready

How to do it...

How it works...

Deploying a servlet in JIRA

Getting ready

How to do it...

How it works...

Adding shared parameters to Servlet Context

Getting ready

How to do it...

How it works...

Writing a Servlet Context Listener

Getting ready

How to do it...

How it works...

Using filters to intercept queries in JIRA

Getting ready

How to do it...

How it works...

Adding and importing components in JIRA

Getting ready

How to do it...

Exposing components to other plugins

Importing public components

How it works...

Adding new module types to JIRA

Getting ready

How to do it...

Creating modules using the new module type

Using the new modules

How it works...

Enabling access logs in JIRA

How to do it...

How it works...

Enabling SQL logging in JIRA

How to do it...

How it works...

Internationalization in webwork plugins

How to do it...

How it works...

Sharing common libraries across v2 plugins

Getting ready

How to do it...

Operations using direct HTML links

How to do it...

Implementing Marketplace licensing in plugins

Getting ready

How to do it...

How it works...

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部