extra/rozsirene-atributy-jedit/src/cz/frantovo/rozsireneAtributy/jedit/Plugin.java
author František Kučera <franta-hg@frantovo.cz>
Sun, 24 Dec 2023 00:38:41 +0100
branchv_0
changeset 42 d2414701ce09
parent 38 41e91ea94acb
permissions -rw-r--r--
režimy zamykání:

- vypnuté: tlačítko pro zamykání je skryté a soubor se nezamyká
- volitelné: uživatel může soubor zamknout, ale může editovat i bez toho
- povinné: uživatel musí soubor zamknout, aby mohl atributy editovat

Změny v atributech se vždy propisují okamžitě - na ně zámek nemá vliv.
Zámek je na souboru (ne metadatech) a slouží pro kooperující procesy.
Proces, který soubor/metadata čte, si jednak může soubor zamknout (POSIX)
a tím mít jistotu, že zrovna neprobíhá editace.
A jednak může reagovat na notifikace CLOSE_WRITE (inotify).
Notifikaci mu pošleme tím, že soubor odemkneme (čímž se i zavře).
     1 /**
     2  * Rozšířené atributy – program na správu rozšířených atributů souborů
     3  * Copyright © 2012 František Kučera (frantovo.cz)
     4  * 
     5  * This program is free software: you can redistribute it and/or modify
     6  * it under the terms of the GNU General Public License as published by
     7  * the Free Software Foundation, either version 3 of the License.
     8  * 
     9  * This program is distributed in the hope that it will be useful,
    10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
    11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    12  * GNU General Public License for more details.
    13  * 
    14  * You should have received a copy of the GNU General Public License
    15  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
    16  */
    17 package cz.frantovo.rozsireneAtributy.jedit;
    18 
    19 import org.gjt.sp.jedit.EBMessage;
    20 import org.gjt.sp.jedit.EBPlugin;
    21 
    22 /**
    23  *
    24  * @author Ing. František Kučera (frantovo.cz)
    25  */
    26 public class Plugin extends EBPlugin {
    27 
    28 	@Override
    29 	public void start() {
    30 		super.start();
    31 	}
    32 
    33 	@Override
    34 	public void stop() {
    35 		super.stop();
    36 	}
    37 
    38 	@Override
    39 	public void handleMessage(EBMessage message) {
    40 		super.handleMessage(message);
    41 	}
    42 }