An off-duty New York City police officer sprang into action on Sunday after a passenger attacked a flight attendant on a JetBlue plane.

Flight 832 was en route from the Dominican Republic to John F. Kennedy International Airport in New York when the assault happened. Roughly a half hour before the plane was scheduled to land, the flight attendant approached 22-year-old Antonio Ynoa of Brooklyn and asked him to stop drinking duty-free alcohol.

According to police reports, the man insisted on receiving soda to mix with the rum he brought on board. Ynoa punched a male flight attendant multiple times when he was told he would not be offered a soda and was asked to put away his alcohol.

Officer Anibal Mercado, a patrol cop in the Bronx with 18 years of experience, told reporters that he felt compelled to help out.

Everybody was very alarmed, Mercado said. I could see the fear in the passengers' faces.

Mercado told Ynoa that he was a police officer before wrestling him to the ground and restraining him with the aircraft's emergency plastic handcuffs, police said.

He struck me a few times in the face as I was trying to restrain him, Mercado said. He was still yelling profanities. I was just telling him to calm down.

The JetBlue plane landed safely and Ynoa was escorted off the aircraft by the FBI, according to a JetBlue spokesman. Ynoa reportedly kept up his foul-mouthed rant even as he was taken into police custody at JFK.

Ynoa will be arraigned Monday in Brooklyn Federal Court on charges of assault and interference with a flight crew.

Ynoa was arrested twice last year on marijuana-related charges and pleaded guilty, police said. He has a third prior arrest that is sealed.

Mercado was back at work later in the day Sunday and told the New York Daily News, Even when I'm on vacation I'm still a police officer. The only difference is it was 12,000 feet in the air.