GVKun编程网logo

SimpleStringProperty和SimpleIntegerProperty TableView JavaFX

10

在本文中,我们将带你了解SimpleStringProperty和SimpleIntegerPropertyTableViewJavaFX在这篇文章中,同时我们还将给您一些技巧,以帮助您实现更有效的c

在本文中,我们将带你了解SimpleStringProperty和SimpleIntegerProperty TableView JavaFX在这篇文章中,同时我们还将给您一些技巧,以帮助您实现更有效的com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter的实例源码、com.hazelcast.config.properties.SimplePropertyDefinition的实例源码、com.intellij.lang.properties.psi.impl.PropertiesFileImpl的实例源码、com.intellij.lang.properties.psi.impl.PropertyImpl的实例源码

本文目录一览:

SimpleStringProperty和SimpleIntegerProperty TableView JavaFX

SimpleStringProperty和SimpleIntegerProperty TableView JavaFX

因此,我尝试学习如何使用JavaFx Tableview,并且在本教程中感到困惑:

Oracle Tableview教程

在本教程中,它们显示了要填充tableView,您必须用String填充它,而不仅仅是将String格式化StringSimpleStringProperty

我尝试了没有格式,结果是没有信息会显示!

我也发现,如果要向Integer表中添加一个,则必须将其声明为SimpleIntegerProperty

现在我对JavaFx还是相当陌生,但这是否意味着当我创建一个对象时,我必须格式化所有的Integers和Strings才能填充TableView吗?看起来很愚蠢,但也许还有更高的目的?还是有办法避免呢?

答案1

小编典典

您不需要在表数据对象中使用属性来显示它们,尽管在某些情况下最好使用属性。

以下代码将显示一个基于Person类的人员表,该类仅具有String字段。

import javafx.application.Application;import javafx.collections.*;import javafx.geometry.Insets;import javafx.scene.*;import javafx.scene.control.*;import javafx.scene.control.cell.PropertyValueFactory;import javafx.scene.layout.VBox;import javafx.scene.text.Font;import javafx.stage.Stage;public class ReadOnlyTableView extends Application {  private TableView<Person> table = new TableView<Person>();  private final ObservableList<Person> data =    FXCollections.observableArrayList(      new Person("Jacob", "Smith", "jacob.smith@example.com"),      new Person("Isabella", "Johnson", "isabella.johnson@example.com"),      new Person("Ethan", "Williams", "ethan.williams@example.com"),      new Person("Emma", "Jones", "emma.jones@example.com"),      new Person("Michael", "Brown", "michael.brown@example.com")    );  public static void main(String[] args) { launch(args); }  @Override public void start(Stage stage) {    stage.setTitle("Table View Sample");    stage.setWidth(450);    stage.setHeight(500);    final Label label = new Label("Address Book");    label.setFont(new Font("Arial", 20));    TableColumn firstNameCol = new TableColumn("First Name");    firstNameCol.setMinWidth(100);    firstNameCol.setCellValueFactory(new PropertyValueFactory<Person, String>("firstName"));    TableColumn lastNameCol = new TableColumn("Last Name");    lastNameCol.setMinWidth(100);    lastNameCol.setCellValueFactory(new PropertyValueFactory<Person, String>("lastName"));    TableColumn emailCol = new TableColumn("Email");    emailCol.setMinWidth(200);    emailCol.setCellValueFactory(new PropertyValueFactory<Person, String>("email"));    table.setItems(data);    table.getColumns().addAll(firstNameCol, lastNameCol, emailCol);    final VBox vbox = new VBox();    vbox.setSpacing(5);    vbox.setPadding(new Insets(10, 0, 0, 10));    vbox.getChildren().addAll(label, table);    stage.setScene(new Scene(new Group(vbox)));    stage.show();  }  public static class Person {    private String firstName;    private String lastName;    private String email;    private Person(String fName, String lName, String email) {      this.firstName = fName;      this.lastName = lName;      this.email = email;    }    public String getFirstName() { return firstName; }    public void setFirstName(String fName) { firstName = fName; }    public String getLastName() { return lastName; }    public void setLastName(String lName) { lastName = lName; }    public String getEmail() { return email; }    public void setEmail(String inMail) { email = inMail; }  }}

说明

使用Properties和ObservableLists的目的是使它们成为可听元素。使用属性时,如果数据模型中的属性属性值更改,则TableView中的项目视图将自动更新以匹配更新的数据模型值。例如,如果某人的电子邮件属性的值设置为新值,则该更新将反映在TableView中,因为它侦听属性更改。如果改为使用纯字符串表示电子邮件,则TableView将不会刷新,因为它不会意识到电子邮件值的更改。

该PropertyValueFactory文档详细描述了这一过程:

如何使用此类的一个示例是:

TableColumn<Person,String> firstNameCol = new

TableColumn(“First Name”);
firstNameCol.setCellValueFactory(new
PropertyValueFactory(“firstName”));

在此示例中,“
firstName”字符串用作对Person类类型(TableView项目列表的类类型)中假定的firstNameProperty()方法的引用。此外,此方法必须返回一个Property实例。如果找到满足这些要求的方法,则用此ObservableValue填充TableCell。此外,TableView会自动将观察者添加到返回的值中,这样,触发的任何更改都将被TableView观察到,从而导致单元立即更新。

如果不存在与该模式匹配的方法,则尝试调用get()或is()(即上例中的getFirstName()或isFirstName())具有透支支持。如果存在与该模式匹配的方法,则从该方法返回的值将包装在ReadOnlyObjectWrapper中,并返回到TableCell。但是,在这种情况下,这意味着TableCell将无法观察ObservableValue的更改(与上述第一种方法一样)。

更新资料

这是与第一个示例的对比示例,该示例演示TableView如何观察并基于对项目的ObservableList的更改以及对基于属性的item属性值的更改自动刷新。

import javafx.application.Application;import javafx.beans.property.*;import javafx.collections.*;import javafx.event.*;import javafx.geometry.Insets;import javafx.scene.*;import javafx.scene.control.*;import javafx.scene.control.cell.PropertyValueFactory;import javafx.scene.layout.VBox;import javafx.scene.text.Font;import javafx.stage.Stage;public class PropertyBasedTableView extends Application {  private TableView<Person> table = new TableView<Person>();  private final ObservableList<Person> data = FXCollections.observableArrayList();  private void initData() {    data.setAll(      new Person("Jacob", "Smith", "jacob.smith@example.com"),      new Person("Isabella", "Johnson", "isabella.johnson@example.com"),      new Person("Ethan", "Williams", "ethan.williams@example.com"),      new Person("Emma", "Jones", "emma.jones@example.com"),      new Person("Michael", "Brown", "michael.brown@example.com")    );  }  public static void main(String[] args) { launch(args); }  @Override public void start(Stage stage) {    initData();    stage.setTitle("Table View Sample");    stage.setWidth(450);    stage.setHeight(500);    final Label label = new Label("Address Book");    label.setFont(new Font("Arial", 20));    TableColumn firstNameCol = new TableColumn("First Name");    firstNameCol.setMinWidth(100);    firstNameCol.setCellValueFactory(new PropertyValueFactory<Person, String>("firstName"));    TableColumn lastNameCol = new TableColumn("Last Name");    lastNameCol.setMinWidth(100);    lastNameCol.setCellValueFactory(new PropertyValueFactory<Person, String>("lastName"));    TableColumn emailCol = new TableColumn("Email");    emailCol.setMinWidth(200);    emailCol.setCellValueFactory(new PropertyValueFactory<Person, String>("email"));    table.setItems(data);    table.getColumns().addAll(firstNameCol, lastNameCol, emailCol);    table.setPrefHeight(300);    final Button setEmailButton = new Button("Set first email in table to wizard@frobozz.com");    setEmailButton.setOnAction(new EventHandler<ActionEvent>() {      @Override public void handle(ActionEvent event) {        if (data.size() > 0) {          data.get(0).setEmail("wizard@frobozz.com");        }        }    });    final Button removeRowButton = new Button("Remove first row from the table");    removeRowButton.setOnAction(new EventHandler<ActionEvent>() {      @Override public void handle(ActionEvent event) {        if (data.size() > 0) {          data.remove(0);        }        }    });    final Button resetButton = new Button("Reset table data");    resetButton.setOnAction(new EventHandler<ActionEvent>() {      @Override public void handle(ActionEvent event) {        initData();      }    });    final VBox vbox = new VBox(10);    vbox.setPadding(new Insets(10, 0, 0, 10));    vbox.getChildren().addAll(label, table, setEmailButton, removeRowButton, resetButton);    stage.setScene(new Scene(new Group(vbox)));    stage.show();  }  public static class Person {    private final StringProperty firstName;    private final StringProperty lastName;    private final StringProperty email;    private Person(String fName, String lName, String email) {      this.firstName = new SimpleStringProperty(fName);      this.lastName = new SimpleStringProperty(lName);      this.email = new SimpleStringProperty(email);    }    public String getFirstName() { return firstName.get(); }    public void setFirstName(String fName) { firstName.set(fName); }    public StringProperty firstNameProperty() { return firstName; }    public String getLastName() { return lastName.get(); }    public void setLastName(String lName) { lastName.set(lName); }    public StringProperty lastNameProperty() { return lastName; }    public String getEmail() { return email.get(); }    public void setEmail(String inMail) { email.set(inMail); }    public StringProperty emailProperty() { return email; }  // if this method is commented out then the tableview will not refresh when the email is set.  }}

com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter的实例源码

com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter的实例源码

项目:bnade-web-ssh    文件:AuctionServiceTest.java   
@Test
public void findAllTest2() throws Exception {
    Auction auction = new Auction();
    auction.setRealmId(1);
    auction.setItemId(124105);
    List<Auction> auctions = auctionService.findAll(auction);
    ObjectMapper mapper = new ObjectMapper();
    FilterProvider filters = new SimpleFilterProvider().addFilter("auctionFilter",SimpleBeanPropertyFilter.filterOutAllExcept("owner"));

    MappingJacksonValue mappingJacksonValue = new MappingJacksonValue(auctions);
    mappingJacksonValue.setFilters(filters);
    System.out.println(mappingJacksonValue.getValue());
}
项目:JRediClients    文件:ConfigSupport.java   
private ObjectMapper createMapper(JsonFactory mapping,ClassLoader classLoader) {
    ObjectMapper mapper = new ObjectMapper(mapping);
    mapper.addMixIn(MasterSlaveServersConfig.class,MasterSlaveServersConfigMixIn.class);
    mapper.addMixIn(SingleServerConfig.class,SingleSeverConfigMixIn.class);
    mapper.addMixIn(Config.class,ConfigMixIn.class);
    mapper.addMixIn(CodecProvider.class,ClassMixIn.class);
    mapper.addMixIn(ResolverProvider.class,ClassMixIn.class);
    mapper.addMixIn(Codec.class,ClassMixIn.class);
    mapper.addMixIn(RedissonNodeInitializer.class,ClassMixIn.class);
    mapper.addMixIn(LoadBalancer.class,ClassMixIn.class);
    FilterProvider filterProvider = new SimpleFilterProvider()
            .addFilter("classFilter",SimpleBeanPropertyFilter.filterOutAllExcept());
    mapper.setFilterProvider(filterProvider);
    mapper.setSerializationInclusion(Include.NON_NULL);

    if (classLoader != null) {
        TypeFactory tf = TypeFactory.defaultInstance()
                .withClassLoader(classLoader);
        mapper.setTypeFactory(tf);
    }

    return mapper;
}
项目:spring4-understanding    文件:MappingJackson2JsonViewTests.java   
@Test
public void renderSimpleBeanWithFilters() throws Exception {
    TestSimpleBeanFiltered bean = new TestSimpleBeanFiltered();
    bean.setProperty1("value");
    bean.setProperty2("value");
    Map<String,Object> model = new HashMap<String,Object>();
    model.put("bindingResult",mock(BindingResult.class,"binding_result"));
    model.put("foo",bean);
    FilterProvider filters = new SimpleFilterProvider().addFilter("myJacksonFilter",SimpleBeanPropertyFilter.serializeAllExcept("property2"));
    model.put(FilterProvider.class.getName(),filters);

    view.setUpdateContentLength(true);
    view.render(model,request,response);

    String content = response.getContentAsstring();
    assertTrue(content.length() > 0);
    assertEquals(content.length(),response.getContentLength());
    assertthat(content,containsstring("\"property1\":\"value\""));
    assertthat(content,not(containsstring("\"property2\":\"value\"")));
    assertFalse(content.contains(FilterProvider.class.getName()));
}
项目:jackson-dynamic-filter    文件:DynamicFilterProviderTest.java   
@Test
public void test() throws Exception {
  SomeObject someObject = new SomeObject(1,2,3);
  PropertyFilter withoutB = SimpleBeanPropertyFilter.serializeAllExcept("b");

  String actual = mapper.writeValueAsstring(someObject);
  Assert.assertEquals(1,parser.parse(actual).read("$.a",Integer.class).intValue());
  Assert.assertEquals(2,parser.parse(actual).read("$.b",Integer.class).intValue());
  Assert.assertEquals(3,parser.parse(actual).read("$.c",Integer.class).intValue());

  actual = mapper.writer(new DynamicFilterProvider(withoutB)).writeValueAsstring(someObject);
  Assert.assertEquals(1,Integer.class).intValue());
  Assert.assertNull(parser.parse(actual).read("$.b"));
  Assert.assertEquals(3,Integer.class).intValue());

  actual = mapper.writeValueAsstring(someObject);
  Assert.assertEquals(1,Integer.class).intValue());

  actual = mapper.writer(new DynamicFilterProvider()).writeValueAsstring(someObject);
  Assert.assertEquals(1,Integer.class).intValue());
}
项目:phenopacket-reference-implementation    文件:RdfTest.java   
@Test
public void testReadRdf() throws IOException,JsonLdError {
    // FIXME this does not really test the output
    Phenopacket packet = YamlReader
            .readFile("src/test/resources/context/phenopacket-with-context.yaml");
    Model model = RdfGenerator.toRdf(packet,null);
    String packetID = packet.getId();
    Phenopacket newPacket = RdfReader.readModel(model,ContextUtil.expandIdentifierAsValue(packetID,packet));
    ObjectMapper m = new ObjectMapper();
    m.setSerializationInclusion(JsonInclude.Include.NON_NULL);
    m.setFilterProvider(new SimpleFilterProvider().addFilter(
            "PhenopacketClass",SimpleBeanPropertyFilter.serializeAll()));
    ObjectWriter writer = m.writerWithDefaultPrettyPrinter();
    System.out.println(writer.writeValueAsstring(newPacket));
}
项目:alex    文件:WebSymbolTest.java   
@Test
public void ensureThatSerializingASymbolWithoutProjectDoesNotCrash() throws JsonProcessingException {
    String expectedJson = "{\"actions\":["
                + "{\"type\":\"web_click\",\"disabled\":false,\"negated\":false,\"ignoreFailure\":false,"
                        + "\"errorOutput\":null,\"node\":null,\"doubleClick\":false},"
                + "{\"type\":\"web_checkForText\","
                    + "\"errorOutput\":null,\"value\":\"F[oO0]+\",\"regexp\":true},"
                + "{\"type\":\"wait\",\"duration\":" + ONE_SECOND + "}"
            + "],\"group\":2,\"id\":null,\"name\":\"WebSymbol\",\"project\":null,\"successOutput\":null}";
    symbol.setProject(null);

    ObjectMapper mapper = new ObjectMapper();
    mapper.addMixInAnnotations(Object.class,PropertyFilterMixIn.class);

    SimpleBeanPropertyFilter filter = SimpleBeanPropertyFilter.serializeAllExcept("hidden");
    FilterProvider filters = new SimpleFilterProvider().addFilter("filter properties by name",filter);

    String json = mapper.writer(filters).writeValueAsstring(symbol);

    assertEquals(expectedJson,json);
}
项目:gtfs-lib    文件:JsonManager.java   
/**
 * Create a new JsonManager
 * @param theClass The class to create a json manager for (yes,also in the diamonds).
 */
public JsonManager (Class<T> theClass) {
    this.theClass = theClass;
    this.mapper = new ObjectMapper();
    mapper.addMixInAnnotations(Rectangle2D.class,Rectangle2DMixIn.class);
    mapper.registerModule(new GeoJsonModule());
    SimpleModule deser = new SimpleModule();

    deser.addDeserializer(LocalDate.class,new JacksonSerializers.LocalDateStringDeserializer());
    deser.addSerializer(LocalDate.class,new JacksonSerializers.LocalDateStringSerializer());

    deser.addDeserializer(Rectangle2D.class,new Rectangle2DDeserializer());
    mapper.registerModule(deser);
    mapper.getSerializerProvider().setNullKeySerializer(new JacksonSerializers.MyDtoNullKeySerializer());
    filters = new SimpleFilterProvider();
    filters.addFilter("bBox",SimpleBeanPropertyFilter.filterOutAllExcept("west","east","south","north"));
    this.writer = mapper.writer(filters);
}
项目:centromere    文件:CrudControllerIntegrationTests.java   
@Test
public void createtest() throws Exception {

    EntrezGene
            gene = new EntrezGene(6L,"GeneF",9606,"","10","protein-coding",null,null);
    objectMapper.setFilterProvider(new SimpleFilterProvider().addFilter("fieldFilter",SimpleBeanPropertyFilter.serializeAllExcept()).setFailOnUnkNownId(false));
    objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);

    mockmvc.perform(post(BASE_URL)
            .contentType(MediaType.APPLICATION_JSON)
            .content(objectMapper.writeValueAsBytes(gene)))
            .andExpect(status().isCreated())
            .andExpect(jsonPath("$",hasKey("entrezGeneId")))
            .andExpect(jsonPath("$.entrezGeneId",is(6)));

    mockmvc.perform(get(BASE_URL + "/{id}",6L))
            .andExpect(status().isOk())
            .andExpect(jsonPath("$.entrezGeneId",is(6)));

    geneRepository.delete(6L);

}
项目:resource-server    文件:AttributesRemovalHelper.java   
private ObjectWriter getobjectWriter(ObjectMapper mapper,String[] fieldsToReturn) {

        if (fieldsToReturn.length != 0) {
            mapper.addMixInAnnotations(
                    Object.class,PropertyFilterMixIn.class);

            HashSet<String> givenFields = new HashSet<>();
            givenFields.add("schemas");
            Collections.addAll(givenFields,fieldsToReturn);
            String[] finalFieldsToReturn = givenFields.toArray(new String[givenFields.size()]);

            FilterProvider filters = new SimpleFilterProvider()
                    .addFilter("filter properties by name",SimpleBeanPropertyFilter.filterOutAllExcept(
                                    finalFieldsToReturn));
            return mapper.writer(filters);
        }
        return mapper.writer();
    }
项目:find    文件:ConfigFileConfiguration.java   
@Bean
public SimpleFilterProvider filterProvider() {
    final Set<String> set = ImmutableSet.of(
            "indexProtocol","indexPort","serviceProtocol","servicePort","productType","productTypeRegex","indexErrorMessage","plaintextPassword","currentPassword"
    );

    final SimpleBeanPropertyFilter.SerializeExceptFilter filter = new SimpleBeanPropertyFilter.SerializeExceptFilter(set);

    return new SimpleFilterProvider(ImmutableMap.of("configurationFilter",filter));
}
项目:your-all-in-one    文件:JSONFullExporter.java   
protected void configureJSONExporter() {
    mapper = new ObjectMapper();

    // configure
    mapper.enable(SerializationFeature.ORDER_MAP_ENTRIES_BY_KEYS);

    // set Mixins
    mapper.addMixInAnnotations(BaseNode.class,JsonExportBaseNodeMixin.class);
    mapper.addMixInAnnotations(TaskNode.class,JsonExportBaseNodeMixin.class);
    mapper.addMixInAnnotations(EventNode.class,JsonExportBaseNodeMixin.class);
    mapper.addMixInAnnotations(InfoNode.class,JsonExportBaseNodeMixin.class);
    mapper.addMixInAnnotations(SymLinkNode.class,JsonExportBaseNodeMixin.class);
    mapper.addMixInAnnotations(UrlResNode.class,JsonExportBaseNodeMixin.class);

    // add additional filters
    mapper.addMixInAnnotations(Object.class,PropertyFilterMixIn.class);
    String[] ignorableFieldNames = {"importTmpId","fullSrc","srcName"};
    FilterProvider filters = new SimpleFilterProvider().addFilter("filter properties by name",SimpleBeanPropertyFilter.serializeAllExcept(ignorableFieldNames));
    writer = mapper.writer(filters);
}
项目:odo    文件:PathController.java   
@SuppressWarnings("deprecation")
@RequestMapping(value = "/api/path",method = RequestMethod.GET)
@ResponseBody
public String getPathsForProfile(Model model,String profileIdentifier,@RequestParam(value = "typeFilter[]",required = false) String[] typeFilter,@RequestParam(value = "clientUUID",defaultValue = Constants.PROFILE_CLIENT_DEFAULT_ID) String clientUUID) throws Exception {
    int profileId = ControllerUtils.convertProfileIdentifier(profileIdentifier);
    List<EndpointOverride> paths = PathOverrideService.getInstance().getPaths(profileId,clientUUID,typeFilter);

    HashMap<String,Object> jqReturn = Utils.getJqgridJSON(paths,"paths");

    ObjectMapper objectMapper = new ObjectMapper();
    objectMapper.addMixInAnnotations(Object.class,ViewFilters.GetPathFilter.class);
    String[] ignorableFieldNames = {"possibleEndpoints","enabledEndpoints"};
    FilterProvider filters = new SimpleFilterProvider().addFilter("Filter properties from the PathController GET",SimpleBeanPropertyFilter.serializeAllExcept(ignorableFieldNames));

    ObjectWriter writer = objectMapper.writer(filters);

    return writer.writeValueAsstring(jqReturn);
}
项目:odo    文件:PathController.java   
@RequestMapping(value = "/api/path/test",method = RequestMethod.GET)
@ResponseBody
public String testPath(@RequestParam String url,@RequestParam String profileIdentifier,@RequestParam Integer requestType) throws Exception {
    int profileId = ControllerUtils.convertProfileIdentifier(profileIdentifier);

    List<EndpointOverride> trySelectedRequestPaths = PathOverrideService.getInstance().getSelectedpaths(Constants.OVERRIDE_TYPE_REQUEST,ClientService.getInstance().findClient("-1",profileId),ProfileService.getInstance().findProfile(profileId),url,requestType,true);

    HashMap<String,Object> jqReturn = Utils.getJqgridJSON(trySelectedRequestPaths,SimpleBeanPropertyFilter.serializeAllExcept(ignorableFieldNames));

    ObjectWriter writer = objectMapper.writer(filters);

    return writer.writeValueAsstring(jqReturn);
}
项目:logging-log4j2    文件:JacksonFactory.java   
ObjectWriter newWriter(final boolean locationInfo,final boolean properties,final boolean compact) {
    final SimpleFilterProvider filters = new SimpleFilterProvider();
    final Set<String> except = new HashSet<>(2);
    if (!locationInfo) {
        except.add(this.getPropertNameForSource());
    }
    if (!properties) {
        except.add(this.getPropertNameForContextMap());
    }
    except.add(this.getPropertNameForNanoTime());
    filters.addFilter(Log4jLogEvent.class.getName(),SimpleBeanPropertyFilter.serializeAllExcept(except));
    final ObjectWriter writer = this.newObjectMapper().writer(compact ? this.newCompactPrinter() : this.newPrettyPrinter());
    return writer.with(filters);
}
项目:BLOG-Microservice    文件:JsonUtils.java   
public static String objectToJsonExclude(Object data,String filterName,String  ...exName) {
    try {
          SimpleBeanPropertyFilter theFilter = SimpleBeanPropertyFilter
                  .serializeAllExcept(exName);
          FilterProvider filters = new SimpleFilterProvider()
                  .addFilter(filterName,theFilter);

          return MAPPER.writer(filters).writeValueAsstring(data);
} catch (JsonProcessingException e) {
    e.printstacktrace();
}
    return null;
  }
项目:cerebro    文件:CerebroController.java   
@ExceptionHandler(CerebroException.class)
@ResponseStatus(value = HttpStatus.INTERNAL_SERVER_ERROR)
public String getErrorCode(final CerebroException exception) throws IOException {
    LOGGER.error("Service error",exception);
    ObjectMapper objectMapper = new ObjectMapper();
    FilterProvider filterProvider = new SimpleFilterProvider().addFilter("responseFilter",SimpleBeanPropertyFilter.filterOutAllExcept("errorCode","errorMessage"));
    objectMapper.setFilterProvider(filterProvider);
    return objectMapper.writeValueAsstring(exception);
}
项目:spring4-understanding    文件:Jackson2ObjectMapperBuilderTests.java   
@Test
public void filters() throws JsonProcessingException {
    ObjectMapper objectMapper = Jackson2ObjectMapperBuilder.json()
            .filters(new SimpleFilterProvider().setFailOnUnkNownId(false)).build();
    JacksonFilteredBean bean = new JacksonFilteredBean("value1","value2");
    String output = objectMapper.writeValueAsstring(bean);
    assertthat(output,containsstring("value1"));
    assertthat(output,containsstring("value2"));

    objectMapper = Jackson2ObjectMapperBuilder.json().filters((new SimpleFilterProvider().setFailOnUnkNownId(false)
            .setDefaultFilter(SimpleBeanPropertyFilter.serializeAllExcept("property2")))).build();
    output = objectMapper.writeValueAsstring(bean);
    assertthat(output,not(containsstring("value2")));
}
项目:jackson-dynamic-filter    文件:DynamicFilterResolverTest.java   
@Bean
public DynamicFilterResponseBodyAdvice propertyFilterResponseBodyAdvice() {
  DynamicFilterResponseBodyAdvice advice = new DynamicFilterResponseBodyAdvice();
  advice.addResolvers(new DynamicFilterResolver<WithoutAB>() {
    @Override
    public PropertyFilter apply(WithoutAB t) {
      return SimpleBeanPropertyFilter.serializeAllExcept("a","b");
    }
  });
  return advice;
}
项目:phenopacket-reference-implementation    文件:YamlGenerator.java   
public static String render(Object obj) throws JsonProcessingException {
    ObjectMapper mapper = new ObjectMapper(new YAMLFactory());
    mapper.setFilterProvider(new SimpleFilterProvider().addFilter(
            "PhenopacketClass",SimpleBeanPropertyFilter.serializeAll()));
    mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
    ObjectWriter writer = mapper.writerWithDefaultPrettyPrinter();
    return writer.writeValueAsstring(obj);
}
项目:phenopacket-reference-implementation    文件:RdfReader.java   
private static ObjectNode generateSchema() throws JsonMappingException {
    ObjectMapper m = new ObjectMapper();
    m.setFilterProvider(new SimpleFilterProvider().addFilter(
            "PhenopacketClass",SimpleBeanPropertyFilter.serializeAll()));
    SchemaFactoryWrapper visitor = new SchemaFactoryWrapper();
    m.acceptJsonFormatVisitor(m.constructType(Phenopacket.class),visitor);
    JsonSchema jsonSchema = visitor.finalSchema();
    return (ObjectNode) m.valuetoTree(jsonSchema);
}
项目:phenopacket-reference-implementation    文件:JsonGenerator.java   
private static String prettyJsonString(Object obj)
        throws JsonProcessingException {
    ObjectMapper mapper = new ObjectMapper();
    mapper.setFilterProvider(new SimpleFilterProvider().addFilter(
            "PhenopacketClass",SimpleBeanPropertyFilter.serializeAll()));
    mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
    ObjectWriter writer = mapper.writerWithDefaultPrettyPrinter();
    return writer.writeValueAsstring(obj);
}
项目:phenopacket-reference-implementation    文件:SchemaGeneratorTest.java   
private void makeSchema(Class c,String fn) throws IOException {

        ObjectMapper m = new ObjectMapper();
        m.setFilterProvider(new SimpleFilterProvider().addFilter(
                "PhenopacketClass",SimpleBeanPropertyFilter.serializeAll()));
        SchemaFactoryWrapper visitor = new SchemaFactoryWrapper();
        m.acceptJsonFormatVisitor(m.constructType(c),visitor);
        JsonSchema jsonSchema = visitor.finalSchema();
        String s = m.writerWithDefaultPrettyPrinter().writeValueAsstring(
                jsonSchema);
        System.out.println(s);
        writeSchema(fn,s);
    }
项目:phenopacket-reference-implementation    文件:ProtobufGeneratorTest.java   
private void makeSchema(Class<?> c,String fn) throws IOException {
    // Protobuf cannot serialize freeform Objects
    ObjectMapper mapper = new ProtobufMapper()
            .setFilterProvider(new SimpleFilterProvider().addFilter(
                    "PhenopacketClass",SimpleBeanPropertyFilter.serializeAllExcept("@context")));
    // Todo: make these compile and pass!
    ProtobufSchemaGenerator gen = new ProtobufSchemaGenerator();
    mapper.acceptJsonFormatVisitor(c,gen);
    ProtobufSchema schemaWrapper = gen.getGeneratedSchema();
    String s = schemaWrapper.getSource().toString();
    writeSchema(fn,s);

}
项目:bonita-ui-designer    文件:ObjectMapperExceptField.java   
public ObjectMapperExceptField(Class<?> targetClass,String property) {
    super();
    SimpleBeanPropertyFilter theFilter = SimpleBeanPropertyFilter.serializeAllExcept(property);
    FilterProvider filters = new SimpleFilterProvider().addFilter("myFilter",theFilter);
    addMixInAnnotations(targetClass,PropertyFilterMixIn.class);
    setFilters(filters);
}
项目:alex    文件:SymbolGroupResourceTest.java   
public static String writeGroup(SymbolGroup group) throws JsonProcessingException {
    SimpleBeanPropertyFilter filter = SimpleBeanPropertyFilter.serializeAllExcept("symbolAmount");
    FilterProvider filters = new SimpleFilterProvider().addFilter("filter properties by name",filter);
    ObjectMapper mapper = new ObjectMapper();
    mapper.addMixInAnnotations(Object.class,PropertyFilterMixIn.class);
    return mapper.writer(filters).writeValueAsstring(group);
}
项目:sys-api    文件:SystemApiApplication.java   
@Override
public void initialize(Bootstrap<SystemApiConfiguration> maintenanceConfigurationBootstrap) {
    ObjectMapper mapper = maintenanceConfigurationBootstrap.getobjectMapper();
    mapper.addMixInAnnotations(NetworkInterface.class,NetworkInterfaceMixin.class);
    FilterProvider filterProvider = new SimpleFilterProvider()
            .addFilter("networkInterface filter",SimpleBeanPropertyFilter.serializeAllExcept("name","displayName","inetAddresses","interfaceAddresses","mtu","subInterfaces"));
    mapper.setFilters(filterProvider);
}
项目:Gaffer    文件:JSONSerialiser.java   
public static FilterProvider getFilterProvider(final String... fieldsToExclude) {
    if (null == fieldsToExclude || fieldsToExclude.length == 0) {
        // Use the 'serializeAllExcept' method so it is compatible with older versions of jackson
        return new SimpleFilterProvider()
                .addFilter(FILTER_FIELDS_BY_NAME,(BeanPropertyFilter) SimpleBeanPropertyFilter.serializeAllExcept());
    }

    return new SimpleFilterProvider()
            .addFilter(FILTER_FIELDS_BY_NAME,(BeanPropertyFilter) SimpleBeanPropertyFilter.serializeAllExcept(fieldsToExclude));
}
项目:osiam    文件:ResourceController.java   
protected MappingJacksonValue buildresponse(Object resource,String attributes) {

        MappingJacksonValue wrapper = new MappingJacksonValue(resource);
        if (!Strings.isNullOrEmpty(attributes)) {
            Set<String> attributesSet = extractAttributes(attributes);
            FilterProvider filterProvider = new SimpleFilterProvider().addFilter(
                    "attributeFilter",SimpleBeanPropertyFilter.filterOutAllExcept(attributesSet)
            );
            wrapper.setFilters(filterProvider);
        }
        return wrapper;
    }
项目:triathlon    文件:TriathlonServiceImpl.java   
/**
 * Convert a {@link Marathon} object to Json.
 *
 * @param marathon
 * @return
 * @throws IOException
 */
@Override
public String serializeMarathon(Marathon marathon) throws IOException {
    FilterProvider filters = new SimpleFilterProvider().addFilter("filterConstraints",SimpleBeanPropertyFilter.serializeAllExcept("constraints"));

    String json = objectMapper.setFilterProvider(filters).writeValueAsstring(marathon);
    return json;
}
项目:distributedMonitoring    文件:HttpBodyFilter.java   
@Override
public String process(String textToProcess,JsonNode configuration) throws Throwable {
    HttpResponseForAvailability httpResponseForAvailability = JsonConverter.jsonStringToObject(textToProcess,HttpResponseForAvailability.class);

    ObjectMapper mapper = new ObjectMapper();
    String[] ignorableFieldNames = { "httpStatusCode"};
    FilterProvider filters = new SimpleFilterProvider()
            .addFilter("httpFilter",SimpleBeanPropertyFilter.serializeAllExcept(ignorableFieldNames));
    ObjectWriter writer = mapper.writer(filters);
    return  writer.writeValueAsstring(httpResponseForAvailability);
}
项目:distributedMonitoring    文件:HttpStatusCodeFilter.java   
@Override
public String process(String textToProcess,JsonNode configuration) throws Throwable {
    HttpResponseForAvailability httpResponseForAvailability =
            JsonConverter.jsonStringToObject(textToProcess,HttpResponseForAvailability.class);

    ObjectMapper mapper = new ObjectMapper();
    String[] ignorableFieldNames = { "body"};
    FilterProvider filters = new SimpleFilterProvider()
            .addFilter("httpFilter",SimpleBeanPropertyFilter.serializeAllExcept(ignorableFieldNames));
    ObjectWriter writer = mapper.writer(filters);
    return writer.writeValueAsstring(httpResponseForAvailability);
}
项目:centromere    文件:CrudControllerIntegrationTests.java   
@Test
public void updatetest() throws Exception {

    EntrezGene gene = new EntrezGene(7L,"GeneG",SimpleBeanPropertyFilter.serializeAllExcept()).setFailOnUnkNownId(false));
    objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);

    mockmvc.perform(post(BASE_URL)
            .contentType(MediaType.APPLICATION_JSON)
            .content(objectMapper.writeValueAsBytes(gene)))
            .andExpect(status().isCreated());

    gene.setPrimaryGenesymbol("TEST_GENE");

    mockmvc.perform(put(BASE_URL + "/{id}",7L)
            .contentType(MediaType.APPLICATION_JSON)
            .content(objectMapper.writeValueAsBytes(gene)))
            .andExpect(status().isCreated())
            .andExpect(jsonPath("$",is(7)))
            .andExpect(jsonPath("$.primaryGenesymbol",is("TEST_GENE")));

    mockmvc.perform(get(BASE_URL + "/{id}",7L))
            .andExpect(status().isOk())
            .andExpect(jsonPath("$.entrezGeneId",is("TEST_GENE")));

    geneRepository.delete(7L);

}
项目:centromere    文件:ReadOnlyControllerIntegrationTests.java   
@Test
public void posttest() throws Exception {
    EntrezGene
            gene = new EntrezGene(6L,SimpleBeanPropertyFilter.serializeAllExcept()).setFailOnUnkNownId(false));
    objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
    mockmvc.perform(post(BASE_URL)
            .contentType(MediaType.APPLICATION_JSON)
            .content(objectMapper.writeValueAsBytes(gene)))
            .andExpect(status().isMethodNotAllowed());
}
项目:centromere    文件:ReadOnlyControllerIntegrationTests.java   
@Test
public void puttest() throws Exception {
    EntrezGene
            gene = new EntrezGene(6L,SimpleBeanPropertyFilter.serializeAllExcept()).setFailOnUnkNownId(false));
    objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
    mockmvc.perform(put(BASE_URL + "/1")
            .contentType(MediaType.APPLICATION_JSON)
            .content(objectMapper.writeValueAsBytes(gene)))
            .andExpect(status().isMethodNotAllowed());
}
项目:ds3_java_sdk    文件:XmlOutput.java   
public static String toXml(final Ds3ObjectList objects,final boolean isBulkPut) {
    if (isBulkPut) {
        return XmlOutput.toXml(objects);
    }
    final FilterProvider filters = new SimpleFilterProvider().addFilter("sizefilter",SimpleBeanPropertyFilter.serializeAllExcept("Size"));
    return XmlOutput.toXml(objects,filters);
}
项目:droidtowers    文件:HappyDroidobjectMapper.java   
public HappyDroidobjectMapper() {
    super();

    configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS,false);
    happyModules = new SimpleModule();
    happyModules.addSerializer(new StackTraceSerializer());
    registerModule(happyModules);

    setFilters(new SimpleFilterProvider().addFilter("HappyDroidServiceObject",SimpleBeanPropertyFilter.serializeAllExcept("id")));
}
项目:logback-steno    文件:StenoEncoder.java   
/**
 * Enables/disables redaction support when serializing complex objects.  Redacted fields/properties marked
 * with the @LogRedact annotation will be output as a string with the value "{@code <REDACTED>}".
 *
 * @param redactEnabled - true to filter out redacted fields
 *
 * @since 1.1.0
 */
public void setRedactEnabled(final boolean redactEnabled) {
    final SimpleFilterProvider simpleFilterProvider = new SimpleFilterProvider();
    if (redactEnabled) {
        simpleFilterProvider.addFilter(RedactionFilter.REDACTION_FILTER_ID,new RedactionFilter(!_redactNull));
    } else {
        simpleFilterProvider.addFilter(RedactionFilter.REDACTION_FILTER_ID,SimpleBeanPropertyFilter.serializeAllExcept(Collections.<String>emptySet()));
    }
    _objectMapper.setFilterProvider(simpleFilterProvider);
    _redactEnabled = redactEnabled;
}
项目:gtfs-validator    文件:JsonSerializer.java   
/**
 * Create a JSON serializer for these validation results.
 * @param results
 */
public JsonSerializer (FeedValidationResultSet results) {
    super(results);
    mapper = new ObjectMapper();
    mapper.addMixInAnnotations(Rectangle2D.class,Rectangle2DMixIn.class);
    SimpleModule deser = new SimpleModule();
    deser.addDeserializer(Rectangle2D.class,new Rectangle2DDeserializer());
    mapper.registerModule(deser);
    SimpleFilterProvider filters = new SimpleFilterProvider();
    filters.addFilter("bBox","north"));
    writer = mapper.writer(filters);
}
项目:ameba    文件:JacksonObjectProvider.java   
@Override
@SuppressWarnings("unchecked")
public PropertyFilter findPropertyFilter(final Object filterId,final Object valuetoFilter) {
    if (filterId instanceof String) {
        final String id = (String) filterId;

        // FilterId should represent a class only in case of root entity is marshalled.
        if (id.equals(root.getEntityClass().getName())) {
            stack.clear();
            return stack.push(root);
        }

        while (!stack.isEmpty()) {
            final FilteringPropertyFilter peek = stack.peek();
            final FilteringPropertyFilter subfilter = peek.findSubfilter(id);

            if (subfilter != null) {
                stack.push(subfilter);

                // Need special handling for maps here - map keys can be filtered as well so we just say that every key is
                // allowed.
                if (valuetoFilter instanceof Map) {
                    final Map<String,?> map = (Map<String,?>) valuetoFilter;
                    return new FilteringPropertyFilter(Map.class,map.keySet(),Collections.emptyMap());
                }
                return subfilter;
            } else {
                stack.pop();
            }
        }
    }
    return SimpleBeanPropertyFilter.filterOutAllExcept();
}
项目:bricklink    文件:UpdateInventoryRequest.java   
@Override
public String getBody() throws Exception {
    Set<String> properties = new HashSet<String>();
    for (String field : fields) {
        properties.add(field);
    }
    SimpleBeanPropertyFilter filter = new SimpleBeanPropertyFilter.FilterExceptFilter(properties);
    SimpleFilterProvider provider = new SimpleFilterProvider();
    provider.addFilter("update inventory request filter",filter);
    return mapper.writer(provider).writeValueAsstring(inventory);
}

com.hazelcast.config.properties.SimplePropertyDefinition的实例源码

com.hazelcast.config.properties.SimplePropertyDefinition的实例源码

项目:hazelcast-heroku-discovery    文件:HerokudiscoveryStrategy.java   
public HerokudiscoveryStrategy(ILogger logger,Map<String,Comparable> properties) {
  super(logger,properties);

  String serviceNamesProp = getorNull(new SimplePropertyDeFinition("serviceNames",PropertyTypeConverter.STRING));
  if (serviceNamesProp == null) {
    String formationName = System.getenv("HEROKU_DNS_FORMATION_NAME");
    if (formationName == null) {
      throw new IllegalArgumentException("You must enable Heroku DNS Service discovery for this Hazelcast plugin to work!");
    } else {
      this.serviceNames = Collections.unmodifiableCollection(Arrays.asList(formationName));
    }
  } else {
    List<String> serviceNamesList = new ArrayList<>();
    for (String serviceName : serviceNamesProp.split(";")) {
      String appName = System.getenv("HEROKU_DNS_APP_NAME");
      if (appName == null) {
        throw new IllegalArgumentException("You must enable Heroku DNS Service discovery for this Hazelcast plugin to work!");
      } else {
        serviceNamesList.add(serviceName + "." + appName);
      }
    }
    this.serviceNames = Collections.unmodifiableCollection(serviceNamesList);
  }

  String mergeDelay = getorNull(new SimplePropertyDeFinition("mergeDelay",PropertyTypeConverter.STRING));
  System.setProperty("hazelcast.merge.first.run.delay.seconds",mergeDelay == null ? "20" : mergeDelay);

  // Todo parse /etc/heroku/space-topology.json instead,// but that should go in a separate library
  Security.setProperty("networkaddress.cache.ttl","20");
  Security.setProperty("networkaddress.cache.negative.ttl","0");
}
项目:hazelcast-consul-spi    文件:ConsuldiscoveryFactory.java   
public ConsuldiscoveryFactory() {
    List<PropertyDeFinition> properties = new ArrayList<>();
    properties.add(new SimplePropertyDeFinition("host",PropertyTypeConverter.STRING));
    properties.add(new SimplePropertyDeFinition("port",PropertyTypeConverter.INTEGER));
    properties.add(new SimplePropertyDeFinition("name",PropertyTypeConverter.STRING));
    this.propertyDeFinitions = Collections.unmodifiableCollection(properties);
}
项目:hazelcast-consul-discovery    文件:ConsuldiscoveryFactory.java   
public ConsuldiscoveryFactory() {
    List<PropertyDeFinition> properties = new ArrayList<>();
    properties.add(new SimplePropertyDeFinition("host",PropertyTypeConverter.STRING));
    this.propertyDeFinitions = Collections.unmodifiableCollection(properties);
}
项目:hazelcast-zookeeper    文件:ZookeeperdiscoveryProperties.java   
private static PropertyDeFinition property(String key,PropertyTypeConverter typeConverter,ValueValidator valueValidator) {
    return new SimplePropertyDeFinition(key,true,typeConverter,valueValidator);
}
项目:hazelcast-eureka    文件:EurekaOneProperties.java   
private static PropertyDeFinition property(String key,TypeConverter typeConverter) {
    return new SimplePropertyDeFinition(key,typeConverter);
}
项目:hazelcast-jclouds    文件:JCloudsProperties.java   
private static PropertyDeFinition property(String key,valueValidator);
}
项目:hzkeeper    文件:ZookeeperdiscoveryProperties.java   
private static PropertyDeFinition property(String key,valueValidator);
}
项目:hazelcast-kubernetes    文件:KubernetesProperties.java   
private static PropertyDeFinition property(String key,typeConverter);
}

com.intellij.lang.properties.psi.impl.PropertiesFileImpl的实例源码

com.intellij.lang.properties.psi.impl.PropertiesFileImpl的实例源码

项目:intellij-ce-playground    文件:WrongPropertykeyvalueDelimiterinspection.java   
@NotNull
@Override
public PsiElementVisitor buildVisitor(@NotNull final ProblemsHolder holder,boolean isOnTheFly) {
  if (!(holder.getFile() instanceof PropertiesFileImpl)) {
    return PsiElementVisitor.EMPTY_VISITOR;
  }
  final PropertiesCodeStyleSettings codeStyleSettings = PropertiesCodeStyleSettings.getInstance(holder.getProject());
  final char codeStylekeyvalueDelimiter = codeStyleSettings.KEY_VALUE_DELIMITER;
  return new PsiElementVisitor() {
    @Override
    public void visitElement(PsiElement element) {
      if (element instanceof PropertyImpl) {
        final Character delimiter = ((PropertyImpl)element).getkeyvalueDelimiter();
        if (delimiter != null && !delimiter.equals(codeStylekeyvalueDelimiter)) {
          holder.registerProblem(element,PropertiesBundle.message("wrong.property.key.value.delimiter.inspection.display.name"),new ReplacekeyvalueDelimiterQuickFix(element));
        }
      }
    }
  };
}
项目:camel-idea-plugin    文件:CamelSmartCompletionEndpointOptions.java   
/**
 * We need special logic to determine when it should insert "=" at the end of the options
 */
@NotNull
private static LookupElementBuilder addInsertHandler(final Editor editor,final LookupElementBuilder builder,String suffix) {
    return builder.withInsertHandler((context,item) -> {
        // enforce using replace select char as we want to replace any existing option
        if (context.getCompletionChar() == Lookup.norMAL_SELECT_CHAR) {
            int endSelectOffBy = 0;
            if (context.getFile() instanceof PropertiesFileImpl) {
                //if it's a property file the PsiElement does not start and end with an quot
                endSelectOffBy = 1;
            }
            final char text = context.getDocument().getChaRSSequence().charat(context.getSelectionEndOffset() - endSelectOffBy);
            if (text != '=') {
                EditorModificationUtil.insertStringAtCaret(editor,"=");
            }
        } else if (context.getCompletionChar() == Lookup.REPLACE_SELECT_CHAR) {
            // we still want to keep the suffix because they are other options
            String value = suffix;
            int pos = value.indexOf("&");
            if (pos > -1) {
                // strip out first part of suffix until next option
                value = value.substring(pos);
            }
            EditorModificationUtil.insertStringAtCaret(editor,"=" + value);
            // and move cursor back again
            int offset = -1 * value.length();
            EditorModificationUtil.moveCaretRelatively(editor,offset);
        }

    });
}
项目:intellij-ce-playground    文件:PropertiesstructureviewbuilderFactory.java   
@NotNull
public Structureviewbuilder getStructureviewbuilder(final PsiFile psiFile) {
  return new Structureviewbuilder() {
    @NotNull
    public StructureView createStructureView(FileEditor fileEditor,@NotNull Project project) {
      return new PropertiesFileStructureViewComponent(project,(PropertiesFileImpl)psiFile,fileEditor);
    }
  };
}
项目:intellij-ce-playground    文件:AlphaUnsortedPropertiesFileinspection.java   
@NotNull
@Override
public PsiElementVisitor buildVisitor(@NotNull final ProblemsHolder holder,boolean isOnTheFly) {
  return new PsiElementVisitor() {
    @Override
    public void visitFile(PsiFile file) {
      final PropertiesFile propertiesFile = PropertiesImplUtil.getPropertiesFile(file);
      if (!(propertiesFile instanceof PropertiesFileImpl)) {
        return;
      }
      for (AlphaUnsortedPropertiesFileinspectionSuppressor filter : AlphaUnsortedPropertiesFileinspectionSuppressor.EP_NAME.getExtensions()) {
        if (filter.suppressinspectionFor(propertiesFile)) {
          return;
        }
      }
      final ResourceBundle resourceBundle = propertiesFile.getResourceBundle();
      final String resourceBundleBaseName = resourceBundle.getBaseName();
      if (!isResourceBundleAlphaSortedExceptOneFile(resourceBundle,propertiesFile)) {
        final List<PropertiesFile> allFiles = resourceBundle.getPropertiesFiles();
        holder.registerProblem(file,String.format(MESSAGE_TEMPLATE_WHOLE_RESOURCE_BUNDLE,resourceBundleBaseName),ProblemHighlightType.INFO,new PropertiesSorterQuickFix(true,allFiles.toArray(new PropertiesFile[allFiles.size()])));
        return;
      }
      if (!propertiesFile.isAlphaSorted()) {
        holder.registerProblem(file,"Properties file is unsorted",propertiesFile));
      }
    }
  };
}
项目:intellij-ce-playground    文件:AlphaUnsortedPropertiesFileinspection.java   
private static boolean isResourceBundleAlphaSortedExceptOneFile(final @NotNull ResourceBundle resourceBundle,final @NotNull PropertiesFile exceptedFile) {
  for (PropertiesFile file : resourceBundle.getPropertiesFiles()) {
    if (!(file instanceof PropertiesFileImpl)) {
      return true;
    }
    if (!file.equals(exceptedFile) && !file.isAlphaSorted()) {
      return false;
    }
  }
  return true;
}
项目:tools-idea    文件:PropertiesstructureviewbuilderFactory.java   
@NotNull
public Structureviewbuilder getStructureviewbuilder(final PsiFile psiFile) {
  return new Structureviewbuilder() {
    @NotNull
    public StructureView createStructureView(FileEditor fileEditor,Project project) {
      return new PropertiesFileStructureViewComponent(project,fileEditor);
    }
  };
}
项目:intellij-ce-playground    文件:PropertiesFileStructureViewComponent.java   
public PropertiesFileStructureViewComponent(Project project,PropertiesFileImpl propertiesFile,FileEditor editor) {
  super(project,editor,new PropertiesFileStructureviewmodel(propertiesFile));
  myPropertiesFile = propertiesFile;
}
项目:intellij-ce-playground    文件:PropertiesFileStructureViewElement.java   
protected PropertiesFileStructureViewElement(PropertiesFileImpl propertiesFile) {
  super(propertiesFile);
}
项目:intellij-ce-playground    文件:PropertiesFileStructureviewmodel.java   
public PropertiesFileStructureviewmodel(final PropertiesFileImpl root) {
  super(root);
  myPropertiesFile = root;
  String separator = PropertiesSeparatorManager.getInstance(root.getProject()).getSeparator(root.getResourceBundle());
  myByWordPrefixesGrouper = new GroupByWordPrefixes(separator);
}
项目:intellij-ce-playground    文件:PropertiesParserDeFinition.java   
public PsiFile createFile(FileViewProvider viewProvider) {
  return new PropertiesFileImpl(viewProvider);
}
项目:tools-idea    文件:PropertiesFileStructureViewComponent.java   
public PropertiesFileStructureViewComponent(Project project,new PropertiesFileStructureviewmodel(propertiesFile));
  myPropertiesFile = propertiesFile;
}
项目:tools-idea    文件:PropertiesFileStructureViewElement.java   
protected PropertiesFileStructureViewElement(PropertiesFileImpl propertiesFile) {
  super(propertiesFile);
}
项目:tools-idea    文件:PropertiesFileStructureviewmodel.java   
public PropertiesFileStructureviewmodel(final PropertiesFileImpl root) {
  super(root);
  myPropertiesFile = root;
  String separator = PropertiesSeparatorManager.getInstance().getSeparator(root.getProject(),root.getVirtualFile());
  myGroupByWordPrefixes = new GroupByWordPrefixes(separator);
}
项目:tools-idea    文件:PropertiesParserDeFinition.java   
public PsiFile createFile(FileViewProvider viewProvider) {
  return new PropertiesFileImpl(viewProvider);
}

com.intellij.lang.properties.psi.impl.PropertyImpl的实例源码

com.intellij.lang.properties.psi.impl.PropertyImpl的实例源码

项目:intellij-ce-playground    文件:TrailingSpacesInPropertyinspection.java   
public ProblemDescriptor[] checkFile(@NotNull PsiFile file,@NotNull final inspectionManager manager,final boolean isOnTheFly) {
  if (!(file instanceof PropertiesFile)) return null;
  final List<IProperty> properties = ((PropertiesFile)file).getProperties();
  final List<ProblemDescriptor> descriptors = new SmartList<ProblemDescriptor>();
  for (IProperty property : properties) {
    ProgressManager.checkCanceled();
    final PropertyImpl propertyImpl = (PropertyImpl)property;
    for (ASTNode node : ContainerUtil.ar(propertyImpl.getKeyNode(),propertyImpl.getValueNode())) {
      if (node != null) {
        PsiElement key = node.getPsi();
        TextRange textRange = getTrailingSpaces(key,myIgnoreVisibleSpaces);
        if (textRange != null) {
          descriptors.add(manager.createProblemDescriptor(key,textRange,"Trailing spaces",ProblemHighlightType.GENERIC_ERROR_OR_WARNING,true,new RemoveTrailingSpacesFix(myIgnoreVisibleSpaces)));
        }
      }
    }
  }
  return descriptors.toArray(new ProblemDescriptor[descriptors.size()]);
}
项目:intellij-ce-playground    文件:WrongPropertykeyvalueDelimiterinspection.java   
@NotNull
@Override
public PsiElementVisitor buildVisitor(@NotNull final ProblemsHolder holder,boolean isOnTheFly) {
  if (!(holder.getFile() instanceof PropertiesFileImpl)) {
    return PsiElementVisitor.EMPTY_VISITOR;
  }
  final PropertiesCodeStyleSettings codeStyleSettings = PropertiesCodeStyleSettings.getInstance(holder.getProject());
  final char codeStylekeyvalueDelimiter = codeStyleSettings.KEY_VALUE_DELIMITER;
  return new PsiElementVisitor() {
    @Override
    public void visitElement(PsiElement element) {
      if (element instanceof PropertyImpl) {
        final Character delimiter = ((PropertyImpl)element).getkeyvalueDelimiter();
        if (delimiter != null && !delimiter.equals(codeStylekeyvalueDelimiter)) {
          holder.registerProblem(element,PropertiesBundle.message("wrong.property.key.value.delimiter.inspection.display.name"),new ReplacekeyvalueDelimiterQuickFix(element));
        }
      }
    }
  };
}
项目:intellij-ce-playground    文件:PropertiesAnnotator.java   
public void annotate(@NotNull PsiElement element,@NotNull AnnotationHolder holder) {
  if (!(element instanceof IProperty)) return;
  final Property property = (Property)element;
  PropertiesFile propertiesFile = property.getPropertiesFile();
  Collection<IProperty> others = propertiesFile.findPropertiesByKey(property.getUnescapedKey());
  ASTNode keyNode = ((PropertyImpl)property).getKeyNode();
  if (others.size() != 1) {
    Annotation annotation = holder.createErrorAnnotation(keyNode,PropertiesBundle.message("duplicate.property.key.error.message"));
    annotation.registerFix(PropertiesQuickFixFactory.getInstance().createRemovePropertyFix(property));
  }

  highlightTokens(property,keyNode,holder,new PropertiesHighlighter());
  ASTNode valueNode = ((PropertyImpl)property).getValueNode();
  if (valueNode != null) {
    highlightTokens(property,valueNode,new PropertiesValueHighlighter());
  }
}
项目:tools-idea    文件:PropertiesAnnotator.java   
public void annotate(@NotNull PsiElement element,PropertiesBundle.message("duplicate.property.key.error.message"));
    annotation.registerFix(new RemovePropertyFix(property));
  }

  highlightTokens(property,new PropertiesValueHighlighter());
  }
}
项目:intellij-ce-playground    文件:PropertiesFileTest.java   
public void testNonDefaultkeyvalueDelimiter() {
  final PropertiesCodeStyleSettings codeStyleSettings = PropertiesCodeStyleSettings.getInstance(getProject());
  codeStyleSettings.KEY_VALUE_DELIMITER = ':';
  final PropertyImpl property = (PropertyImpl)PropertiesElementFactory.createProperty(getProject(),"xxx","yyy");
  final Character delimiter = property.getkeyvalueDelimiter();
  assertNotNull(delimiter);
  assertEquals(':',(char)delimiter);
  assertEquals("xxx:yyy",property.getPsiElement().getText());
  codeStyleSettings.KEY_VALUE_DELIMITER = PropertiesCodeStyleSettings.DEFAULT_KEY_VALUE_DELIMITER;
}
项目:intellij-ce-playground    文件:TrailingSpacesInPropertyinspection.java   
@Nullable
private static TextRange getTrailingSpaces(PsiElement element,boolean ignoreVisibleTrailingSpaces) {
  String key = element.getText();
  if (ignoreVisibleTrailingSpaces) {
    for (int i = key.length() - 1; i > -1; i--) {
      if (key.charat(i) != ' ' && key.charat(i) != '\t') {
        return i == key.length() - 1 ? null : new TextRange(i + 1,key.length());
      }
    }
    return element.getTextRange();
  } else {
    return PropertyImpl.trailingSpaces(key);
  }
}
项目:intellij-ce-playground    文件:TrailingSpacesInPropertyinspection.java   
public void applyFix(@NotNull Project project,@NotNull ProblemDescriptor descriptor) {
  PsiElement element = descriptor.getPsiElement();
  PsiElement parent = element == null ? null : element.getParent();
  if (!(parent instanceof PropertyImpl)) return;
  TextRange textRange = getTrailingSpaces(element,myIgnoreVisibleSpaces);
  if (textRange != null) {
    Document document = PsiDocumentManager.getInstance(project).getDocument(element.getContainingFile());
    TextRange docRange = textRange.shiftRight(element.getTextRange().getStartOffset());
    document.deleteString(docRange.getStartOffset(),docRange.getEndOffset());
  }
}
项目:intellij-ce-playground    文件:PropertiescoreEnvironment.java   
public ApplicationEnvironment(CoreApplicationEnvironment appEnvironment) {
  appEnvironment.registerFileType(PropertiesFileType.INSTANCE,"properties");
  appEnvironment.addExplicitExtension(SyntaxHighlighterFactory.LANGUAGE_FACTORY,PropertiesLanguage.INSTANCE,new PropertiesSyntaxHighlighterFactory());
  appEnvironment.addExplicitExtension(LanguageParserDeFinitions.INSTANCE,new PropertiesParserDeFinition());
  appEnvironment.addExtension(FileBasedindexExtension.EXTENSION_POINT_NAME,new XmlPropertiesIndex());
  appEnvironment.addExtension(StubIndexExtension.EP_NAME,new PropertyKeyIndex());

  appEnvironment.registerapplicationservice(PropertiesQuickFixFactory.class,new EmptyPropertiesQuickFixFactory());
  appEnvironment.registerapplicationservice(PropertiesRefactoringSettings.class,new PropertiesRefactoringSettings());
  appEnvironment.addExplicitExtension(LanguageAnnotators.INSTANCE,new PropertiesAnnotator());
  appEnvironment.addExplicitExtension(LanguageFindUsages.INSTANCE,new PropertiesFindUsagesProvider());

  appEnvironment.addExplicitExtension(LanguageASTFactory.INSTANCE,new PropertiesASTFactory());
  appEnvironment.addExplicitExtension(LanguageFolding.INSTANCE,new PropertiesFoldingBuilder());
  appEnvironment.addExplicitExtension(ElementManipulators.INSTANCE,PropertyImpl.class,new PropertyManipulator());
  appEnvironment.addExplicitExtension(ElementManipulators.INSTANCE,PropertyKeyImpl.class,new PropertyKeyManipulator());
  appEnvironment.addExplicitExtension(ElementManipulators.INSTANCE,PropertyValueImpl.class,new PropertyValueManipulator());

  final StubElementTypeHolderEP stubElementTypeHolderBean = new StubElementTypeHolderEP();
  stubElementTypeHolderBean.holderClass = PropertiesElementTypes.class.getName();
  appEnvironment.addExtension(StubElementTypeHolderEP.EP_NAME,stubElementTypeHolderBean);

  appEnvironment.addExplicitExtension(LanguageCommenters.INSTANCE,new PropertiesCommenter());
  appEnvironment.addExplicitExtension(Idindexers.INSTANCE,PropertiesFileType.INSTANCE,new PropertiesIdindexer());
  appEnvironment.addExplicitExtension(TodoIndexers.INSTANCE,new PropertiesTodoIndexer());

  appEnvironment.addExtension(IconProvider.EXTENSION_POINT_NAME,new XmlPropertiesIconProvider());
}
项目:intellij-ce-playground    文件:PropertyManipulator.java   
@Override
public PropertyImpl handleContentChange(@NotNull PropertyImpl element,@NotNull TextRange range,String newContent) throws IncorrectOperationException {
  TextRange valueRange = getRangeInElement(element);
  final String oldText = element.getText();
  String newText = oldText.substring(0,range.getStartOffset()) + newContent + oldText.substring(range.getEndOffset());
  element.setValue(newText.substring(valueRange.getStartOffset()).replaceAll("([^\\s])\n","$1 \n"));  // add explicit space before \n
  return element;
}
项目:intellij-ce-playground    文件:PropertyManipulator.java   
@NotNull
@Override
public TextRange getRangeInElement(@NotNull PropertyImpl element) {
  ASTNode valueNode = element.getValueNode();
  if (valueNode == null) return TextRange.from(element.getTextLength(),0);
  TextRange range = valueNode.getTextRange();
  return TextRange.from(range.getStartOffset() - element.getTextRange().getStartOffset(),range.getLength());
}
项目:intellij-ce-playground    文件:PropertiesParserDeFinition.java   
@NotNull
public PsiElement createElement(ASTNode node) {
  final IElementType type = node.getElementType();
  if (type == PropertiesElementTypes.PROPERTY) {
    return new PropertyImpl(node);
  }
  else if (type == PropertiesElementTypes.PROPERTIES_LIST) {
    return new PropertiesListImpl(node);
  }
  throw new AssertionError("Alien element type [" + type + "]. Can't create Property PsiElement for that.");
}
项目:tools-idea    文件:PropertiesspellcheckingStrategy.java   
@NotNull
@Override
public Tokenizer getTokenizer(PsiElement element) {
  if (element instanceof PropertyValueImpl) {
    return myPropertyValuetokenizer;
  }
  if (element instanceof PropertyImpl) {
    return myPropertyTokenizer;
  }
  return super.getTokenizer(element);
}
项目:tools-idea    文件:PropertyManipulator.java   
@Override
public PropertyImpl handleContentChange(PropertyImpl element,TextRange range,"$1 \n"));  // add explicit space before \n
  return element;
}
项目:tools-idea    文件:PropertyManipulator.java   
@Override
public TextRange getRangeInElement(PropertyImpl element) {
  ASTNode valueNode = element.getValueNode();
  if (valueNode == null) return TextRange.from(element.getTextLength(),range.getLength());
}
项目:tools-idea    文件:TrailingSpacesInPropertyinspection.java   
public void applyFix(@NotNull Project project,@NotNull ProblemDescriptor descriptor) {
  PsiElement element = descriptor.getPsiElement();
  PsiElement parent = element == null ? null : element.getParent();
  if (!(parent instanceof PropertyImpl)) return;
  TextRange textRange = getTrailingSpaces(element);
  if (textRange != null) {
    Document document = PsiDocumentManager.getInstance(project).getDocument(element.getContainingFile());
    TextRange docRange = textRange.shiftRight(element.getTextRange().getStartOffset());
    document.deleteString(docRange.getStartOffset(),docRange.getEndOffset());
  }
}
项目:tools-idea    文件:PropertiesParserDeFinition.java   
@NotNull
public PsiElement createElement(ASTNode node) {
  final IElementType type = node.getElementType();
  if (type == PropertiesElementTypes.PROPERTY) {
    return new PropertyImpl(node);
  }
  else if (type == PropertiesElementTypes.PROPERTIES_LIST) {
    return new PropertiesListImpl(node);
  }
  throw new AssertionError("Alien element type [" + type + "]. Can't create Property PsiElement for that.");
}
项目:intellij-ce-playground    文件:WrongPropertykeyvalueDelimiterinspection.java   
@Override
public void invoke(@NotNull Project project,@NotNull PsiFile file,@NotNull PsiElement element,@NotNull PsiElement endElement) {
  ((PropertyImpl) element).replacekeyvalueDelimiterWithDefault();
}
项目:intellij-ce-playground    文件:PropertyStubElementType.java   
public Property createPsi(@NotNull final PropertyStub stub) {
  return new PropertyImpl(stub,this);
}
项目:intellij-ce-playground    文件:PropertyStubElementType.java   
public void indexStub(@NotNull final PropertyStub stub,@NotNull final IndexSink sink) {
  sink.occurrence(PropertyKeyIndex.KEY,PropertyImpl.unescape(stub.getKey()));
}
项目:tools-idea    文件:PropertiesspellcheckingStrategy.java   
public void tokenize(@NotNull PropertyImpl element,TokenConsumer consumer) {
  String key = element.getKey();
  consumer.consumetoken(element,key,TextRange.allOf(key),Propertiessplitter.getInstance());
}
项目:tools-idea    文件:TrailingSpacesInPropertyinspection.java   
private static TextRange getTrailingSpaces(PsiElement element) {
  String key = element.getText();

  return PropertyImpl.trailingSpaces(key);
}
项目:tools-idea    文件:PropertyStubElementType.java   
public Property createPsi(@NotNull final PropertyStub stub) {
  return new PropertyImpl(stub,this);
}
项目:tools-idea    文件:PropertyStubElementType.java   
public void indexStub(@NotNull final PropertyStub stub,PropertyImpl.unescape(stub.getKey()));
}

关于SimpleStringProperty和SimpleIntegerProperty TableView JavaFX的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter的实例源码、com.hazelcast.config.properties.SimplePropertyDefinition的实例源码、com.intellij.lang.properties.psi.impl.PropertiesFileImpl的实例源码、com.intellij.lang.properties.psi.impl.PropertyImpl的实例源码的相关信息,请在本站寻找。

本文标签: